擅长:python、mysql、java
<p>因为您似乎在使用Unix,所以可以使用一个快速的<code>ps</code>命令来获取子进程的详细信息,就像我在这里所做的那样(这是Linux特有的):</p>
<pre><code>import subprocess, os, signal
def kill_child_processes(parent_pid, sig=signal.SIGTERM):
ps_command = subprocess.Popen("ps -o pid --ppid %d --noheaders" % parent_pid, shell=True, stdout=subprocess.PIPE)
ps_output = ps_command.stdout.read()
retcode = ps_command.wait()
assert retcode == 0, "ps command returned %d" % retcode
for pid_str in ps_output.split("\n")[:-1]:
os.kill(int(pid_str), sig)
</code></pre>