什么是 Daemon 线程?它有什么意义?

Posted programb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是 Daemon 线程?它有什么意义?相关的知识,希望对你有一定的参考价值。

所谓后台(daemon)线程,是指在程序运行的时候在后台提供一种通用服务的线

程,并且这个线程并不属于程序中不可或缺的部分。因此,当所有的非后台线程

结束时,程序也就终止了,同时会杀死进程中的所有后台线程。反过来说,

只要有任何非后台线程还在运行,程序就不会终止。必须在线程启动之前调用

setDaemon()方法,才能把它设置为后台线程。注意:后台进程在不执行 finally

子句的情况下就会终止其 run()方法。

比如:JVM 的垃圾回收线程就是 Daemon 线程,Finalizer 也是守护线程。

以上是关于什么是 Daemon 线程?它有什么意义?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 python-daemon 设置守护进程?

java多线程,对象锁是啥概念?

面试官: 谈谈什么是守护线程以及作用 ?

多线程:线程多于内核有啥意义?

java - 为啥main方法没有转换为java中的守护线程[重复]

JAVA DAEMON线程的理解