python的多线程使用setDaemon有啥意义

setDaemon 是把主线程变成守护线程。类似linux中的守护进程。一般是用来当做某种服务的。如果这服务现在要停止了,那么是不应该等待其子线程的。举个例子:比如你做了一个http server,往往可以利用父线程分配线程池启动一个线程给client响应其请求。如果你这个时候你用的join起动一个线程,那么在它结束以前会一直阻塞住父线程,下面来的request就无法得到响应了,这个时候就需要让这个线程父线程变成他的守护线程,也就是setDaemon,这样它的执行就不会阻止父线程了。另外,当你要停止这个server的时候,肯定是希望其他线程跟着一起销毁的,意义就在这里。
■网友
【python的多线程使用setDaemon有啥意义】 说实话,按python的官方文档来说的话,不理解成“守护线程”,我觉得把Daemon理解成“殿后线程”更好理解。


    推荐阅读