1、简介
CLR中线程分为两种类型,一种是前台线程、另一种是后台线程.
前台线程: 应用程序的主线程、Thread构造的线程都默认为前台线程
后台线程: 线程池线程都为后台线程
2、区别
前台线程:
前台线程一般执行重要性很高的任务,至于什么是重要性很高,这个需要结合业务综合考虑,哪些操作是当前应用程序必须执行的.
后台线程:
这里需要注意,当一个进程的所有前台线程关闭时,也就是当应用程序推出的时候,无论后台线程有没有执行完它的任务,它都会被强制关闭.但是,当应用程序开启时,它又会重新启动.后台线程一般执行不重要、耗时很短的任务,就算进程(应用程序)关闭了,导致它强制关闭,也不会造成影响的任务.比如系统清理程序等.
注意:一般进程会在所有的前台线程执行完毕时关闭.