黑马程序员技术交流社区
标题:
关于线程中的守护线程
[打印本页]
作者:
马林贺
时间:
2012-5-30 22:14
标题:
关于线程中的守护线程
当主线程结束后,为什么守护线程在执行一段时间后才会停止呢,不是主线程一执行结束,守护线程也就跟着结束了吗?
作者:
龙秋地
时间:
2012-5-30 22:25
所谓守护线程其实是后台线程,我们在dos命令行看见的线程都是前台线程,
后台线程特点是开启后和前台线程共同抢夺cpu执行权,开启和运行没区别,就结束有区别.
但是我很不理解lz的意思,毕老师讲的时候说的就是主线程(即正在执行的线程)结束后,守护线程就结束了.
作者:
林翔
时间:
2012-5-31 02:29
按道理主线程结束,守护线程就会结束了,看了你之前的帖子,在别人的电脑里运行没问题,那应该是和电脑配置什么有关了吧,你换台电脑试试?数值范围定义小一点也没用么?
作者:
龚正军
时间:
2012-5-31 03:02
本帖最后由 龚正军 于 2012-5-31 03:05 编辑
守护线程:肯定是在前台线程都结束完后(也就是在只剩下守护线程后)就会停止。
但是我希望你们了解一点是:所谓停止是该守护线程的所在程序所有飞守护线程停止后才会停止,那怕只有一个前台程序在运行,守护线程都会存在。
跟是不是主线程一点关系都没,主线程只是前台线程(你也可以叫他服务线程)的一个线程而已。(前台线程可以有n多个线程,他们只要有一个在守护线程都不会停止,而主线程只是其中之一),所以你主线程停止与否跟守护线程没多大关系。
其本质是用来服务前台线程的。--------------------------典型的守护线程就是jvm的垃圾回收线程!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2