使用thread.setDaemon(True)
将python线程设置为守护程序时有什么区别?
答案 0 :(得分:23)
守护程序线程不会阻止应用程序退出。当所有非守护程序线程(包括主线程)完成时,程序结束。
一般来说,如果你在后台做某事,你可能想把线程设置为守护进程,这样你就不必在应用程序退出之前显式地让该线程的函数返回。
例如,如果您正在编写GUI应用程序并且用户关闭主窗口,则程序应该退出。但是如果你有非守护进程线程,它就不会。
来自文档:http://docs.python.org/library/threading.html#threading.Thread.daemon
它的初始值是继承自的 创建线程;主线程 因此不是守护程序线程 在主线程中创建的所有线程 默认为daemon = False。
整个Python程序何时退出 没有活着的非守护进程线程。