A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 柏涛 中级黑马   /  2014-2-15 20:01  /  1548 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

守护线程是不是就是后台线程啊   有人指导下么

评分

参与人数 1黑马币 +2 收起 理由
zzkang0206 + 2

查看全部评分

5 个回复

倒序浏览
守护线程是后台线程
守护线程是等待其内所有的非守护线程后退出
它的作用比如说JVM的垃圾回收、内存管理 还有数据库里面监控连接状态 连接用户个数等
毕老师有举过一个例子就是圣斗士星矢
星矢那哥五个 就是守护线程 雅典娜就是被守护的前台线程 雅典娜一挂 即前台线程一执行完
星矢那几个就没有圣斗士存在的意义了 就是这样

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
守护线程的作用是为其他线程的运行提供便利服务,比如垃圾回收线程就是一个很称职的守护者。用户线程和守护线程两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果 用户线程已经全部退出运行了,只剩下守护线程存在了,虚拟机也就退出了。 因为没有了被守护者,守护线程也就没有工作可做了,也就没有继续运行程序的必要了。

    值得一提的是,守护线程并非只有虚拟机内部提供,用户在编写程序时也可以自己设置守护线程。下面的方法就是用来设置守护线程的。

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
我觉得使用了setDaemon():就变成了后台线程了,但是后台线程不一定是守护线程,守护线程一定有主线程的,如果主线程没了,或者虚拟机退出了也就跟着退出了。我就想到这么多了

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
后台线程:处于后台运行,任务是为其他线程提供服务。也称为“守护线程”或“精灵线程”。所以两个是相同的
回复 使用道具 举报
后台线程也可以叫做守护线程或用户线程。所以你提的守护线程其实就是后台线程。
守护线程的特点是开启后和前台线程共同抢夺cpu执行权运行,开启和运行都是没有区别的,但是结束有区别,当所有的前台线程都结束后,后台线程就会自动结束。我是这样认为的,希望能帮到你

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马