本人代码如下:
import multiprocessing
import time
def process_a():
for _ in range(10):
print("process a")
time.sleep(1)
def process_b():
print("process b")
ps = []
for _ in range(3):
p = multiprocessing.Process(target=process_a)
p.daemon = True
p.start()
ps.append(p)
for i in ps:
i.join()
if __name__ == '__main__':
p = multiprocessing.Process(target=process_b)
p.daemon = True
p.start()
p.join()
运行报错:AssertionError: daemonic processes are not allowed to have children
想问一下 multiprocessing 是出于什么原因,决定守护进程不能再创建子进程?谢谢
import multiprocessing
import time
def process_a():
for _ in range(10):
print("process a")
time.sleep(1)
def process_b():
print("process b")
ps = []
for _ in range(3):
p = multiprocessing.Process(target=process_a)
p.daemon = True
p.start()
ps.append(p)
for i in ps:
i.join()
if __name__ == '__main__':
p = multiprocessing.Process(target=process_b)
p.daemon = True
p.start()
p.join()
运行报错:AssertionError: daemonic processes are not allowed to have children
想问一下 multiprocessing 是出于什么原因,决定守护进程不能再创建子进程?谢谢