我正在使用python的多处理模块来生成新进程
如下 :
import multiprocessing import os d = multiprocessing.Process(target=os.system,args=('iostat 2 > a.txt',)) d.start()
我想获取iostat命令的pid或使用多处理模块执行的命令
当我执行时:
d.pid
它给了我运行此命令的subshell的pid。
任何帮助都是有价值的。
提前致谢
你可以使用psutil:
import signal, psutil def kill_child_processes(parent_pid, sig=signal.SIGTERM): try: parent = psutil.Process(parent_pid) except psutil.NoSuchProcess: return children = parent.children(recursive=True) for process in children: process.send_signal(sig)