一、守护进程
1.1、什么是守护进程?
1、守护进程会在主进程代码运行结束的情况下,立即挂掉。
2、守护进程本身就是一个子进程。
3、主进程在其代码结束后就已经算运行完毕了(守护进程在此时就被回收),然后主进程会一直等非守护的子进程都运行完毕后回收子进程的资源(否则会产生僵尸进程),才会结束,
1.2、为什么要用守护进程?
1、守护进程本身就是一个子进程,所以在主进程需要将任务并发执行的时候需要开启子进程。
2、当该子进程执行的任务生命周期伴随着主进程的生命周期时,就需要将该子进程做成守护进程。
1.3、如何使用守护进程?
1.例子:
from multiprocessing import Process
import os
import time
def task(x):
print('%s is running ' %x)
time.sleep(3)
print('%s is done' %x)
if __name__ == '__main__':
p1=Process(target=task,args=('守护进程',))
p2=Process(target=task,args=('子进程',))
p1.daemon=True # 设置p1为守护进程
p1.start()
p2.start()
print('主')
>>:主
>&