本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、说明
如果有一个线程必须设置为循环,那么线程没有结束,也就意味着整个python程序无法结束。为了让python程序正常退出,将这种循环线程设置为守护线程。当仅使用守护线程时,python程序可以正常退出,无需关心此类线程是否执行完毕。
2、作用
守护线程的作用是为其他线程提供方便的服务。守护线程最典型的应用是GC(垃圾收集器)。
3、使用注意
(1)
守护线程会在
“该进程内所有非守护线程全部都运行完毕后,守护线程才会挂掉”
(2) 主线程直到其他非守护线程运行完毕才运行完毕(此时回收守护线程)。因为主线程结束意味着进程结束,进程的整体资源将被回收
4、实例
import time
import threading
def fun():
print("start fun")
time.sleep(2)
print("end fun")
def main():
print("main thread")
t1 = threading.Thread(target=fun,args=())
t1.setDaemon(True)
t1.start()
time.sleep(1)
print("main thread end")
if __name__ == '__main__':
main()
当我们运行线程的时候,如果子线程没有结束,整个程序是不会停止的。但是如果给它加一个守护线程,就不一样了。从名字就可以看出它保护了整个线程,所以程序可以安全退出。
以上就是
python守护线程的基本介绍,看完文章你会发现一个程序有守护线程可以让程序退出死循环,我们也来试试这个用法吧。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python是否支持函数重载10/24
- ♥ python Selenium如何等待一个元素出现11/21
- ♥ python中的逻辑行和物理行是什么?01/09
- ♥ python模块的搜索路径和顺序10/24
- ♥ python中鲜为人知的按位运算12/05
- ♥ 如何在python中找到行数?11/16
内容反馈