问题大意:守护进程不允许有子进程
问题产生的场景:我的一个后台进程调用了multiprocessing导致的
# 原写法
from multiprocessing import Pool
pool = Pool(processes=20)
for n in range(100):
pool.apply_async(func=func_name, args=(n))
pool.close()
pool.join()
报错: daemonic processes are not allowed to have children
# 新写法
from billiard.pool import Pool
pool = Pool(processes=20)
for n in range(100):
pool.apply_async(func=func_name, args=(n))
pool.close()
pool.join()
按以上调整即可。