【发布时间】:2016-08-22 03:06:19
【问题描述】:
我有一个进程调用:
p=multiprocessing.Process(target=func_a)
然后func_a启动一个子进程:
subprocess.Popen(["nc", "-l", "-p", str(dport)], stdout=open(os.devnull, "w"))
我的问题是当我打电话给p.terminate() 时,它只会杀死第一个孩子。 p.terminate() 是 SIGKILL,所以当我将 p.terminate() 调用到 multiprocessing.Process 时,我怎么能让子进程死掉。
【问题讨论】:
-
根据the doc,
p.terminate()发送SIGTERM,而SIGKILL是p.kill()发送
标签: python subprocess multiprocessing signals kill