119 python程序中的线程操作-守护线程
2020-12-13 14:45
标签:threading int 资源 stop 守护线程 __name__ enumerate 线程 产生 无论是进程还是线程,都遵循:守护xx会等待主xx运行完毕后被销毁。需要强调的是:运行完毕并非终止运行。 重点:守护线程守护的的是进程的运行周期,只要程序中所有非守护线程都结束后,守护线程才结束 主线程 子线程 start 119 python程序中的线程操作-守护线程 标签:threading int 资源 stop 守护线程 __name__ enumerate 线程 产生 原文地址:https://www.cnblogs.com/xichenHome/p/11569096.html一、守护线程
1.1 详解
1.2 守护线程实例1
from threading import Thread
import time
def sayhi(name):
time.sleep(2)
print('%s say hello' %name)
if __name__ == '__main__':
t=Thread(target=sayhi,args=('nick',))
t.setDaemon(True) #必须在t.start()之前设置
t.start()
print('主线程')
print(t.is_alive())
True1.3 守护线程实例2
from threading import Thread,enumerate,currentThread
import time
def task():
print('守护线程开始')
print(currentThread())
time.sleep(20)
print('守护线程结束')
def task2():
print('子线程 start')
time.sleep(5)
print(enumerate())
print('子线程 end')
if __name__ == '__main__':
t1 = Thread(target=task)
t2 = Thread(target=task2)
t1.daemon = True
t2.start()
t1.start()
print('主')
守护线程开始
主
[<_mainthread stopped>,
子线程 end