我创建了一个Pool实例来启动4个进程。
我可以看到5个python.exe进程正在任务管理器(Windows计算机)中运行。 当我右键单击并杀死主要的python.exe进程时,它不会杀死子进程,因此,子进程仍保留在内存中。
我该如何解决这个问题?
from multiprocessing import Pool
import time
work = (["A", 5], ["B", 2], ["C", 1], ["D", 3])
def work_log(work_data):
time.sleep(100000))
def pool_handler():
with Pool(4) as p:
r = p.map_async(work_log, work)
r.get()
if __name__ == '__main__':
pool_handler()