我想获取给定PID的所有直接子进程列表。我可以使用/proc,但/proc//task//children不精确,可能返回不准确的结果(请参阅此处第3.7节)。我希望有一种更可靠的方法来实现这一点。
我不想使用外壳命令的包装器。
我不想使用外壳命令的包装器。
为什么不使用psutils?
这里有一个例子,我会杀死所有的子进程。
def infanticide(pid):
try:
parent = psutil.Process(pid)
except psutil.NoSuchProcess:
return
children = parent.children(recursive=True)
for p in children:
os.kill(p.pid, signal.SIGKILL)