黑马程序员技术交流社区

标题: 多线程通信中setDaemon() [打印本页]

作者: huhanghao    时间: 2015-3-15 18:36
标题: 多线程通信中setDaemon()
关于setDaemon()不是很理解,为什么要叫守护线程?有什么用啊

作者: 艺多不压身丶    时间: 2015-3-15 18:39
管理作用:
比如你正在 用 Java 写成的编辑器 写 Word 文档,
你一边敲键盘,这是个 非守护线程, 后台还有一个 拼写检查 线程,它是个守护线程,他尽量不打扰你写稿子, 你们可以同时进行,他发现有拼写错误时在状态条显示错误,但是你可以忽略。
就像 城堡门前有个卫兵 (守护线程),里面有诸侯(非守护线程),他们是可以同时干着各自的活儿,但是 城堡里面的人都搬走了, 那么卫兵也就没有存在的意义了。
作者: huhanghao    时间: 2015-3-15 18:51
艺多不压身丶 发表于 2015-3-15 18:39
管理作用:
比如你正在 用 Java 写成的编辑器 写 Word 文档,
你一边敲键盘,这是个 非守护线程, 后台还有 ...

这个城堡的例子太好了。差不多理解了。基本上就是属于主线程的一个附属线程吧!执行主线程不太关心的一些小的查错啊,统计字数啊之类的功能
作者: z47057554    时间: 2015-3-15 21:36
你可以理解为被守护线程的影分身,可以帮该线程做事,但不能脱离它单独存在
作者: huhanghao    时间: 2015-3-15 23:44
z47057554 发表于 2015-3-15 21:36
你可以理解为被守护线程的影分身,可以帮该线程做事,但不能脱离它单独存在 ...

谢谢。影分身这个例子不错。感觉也是个火影粉




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2