守护进程
会随着主进程结束而结束
主进程创建守护进程
其一:守护进程会在主进程代码执行结束后就终止
其二:守护进程内无法再开启子进程,否则抛出异常:
注意:进程之间是互相独立的,主进程代码运行结束,守护进程随即终止。
本质也是一个子进程
主进程的代码执行完毕守护进程直接结束。但是此时主进程可能没有结束
from multiprocessing import Process
import time
def foo():
print('守护进程 start')
time.sleep(5)
print('守护进程 end')
if __name__ == '__main__':
p=Process(target=foo)
p.daemon= True # 把这个子进程定义为了守护进程
p.start()
time.sleep(2)
print('主')
from multiprocessing import Process
import time
def foo():
print('守护进程 start')
time.sleep(3)
print('守护进程 end')
def task():
print('子进程 start')
time.sleep(5)
print('子进程 end')
if __name__ == '__main__':
p=Process(target=foo)
p2=Process(target=task)
p.daemon=True # 把这个子进程定义为了守护进程
p.start()
p2.start()
time.sleep(1)
print('主')