这是我的想法:
首先,我使用subprocess.Popen创建了一个进程
第二,经过一段时间后,我试图通过Popen.kill杀死它()
import subprocess
import os, signal
import time
proc1 = subprocess.Popen("kvm -hda /path/xp.img", shell = True)
time.sleep(2.0)
print 'proc1 = ', proc1.pid
subprocess.Popen.kill(proc1)
Run Code Online (Sandbox Code Playgroud)
但是,"proc1"仍然存在于Popen.kill()之后.任何专家都可以告诉我如何解决这个问题吗?我很感激你的考虑.
感谢所有专家的评论,我做了你所做的一切,但结果仍然保持不变.
proc1.kill() #it sill cannot kill the proc1
os.kill(proc1.pid, signal.SIGKILL) # either cannot kill the proc1
Run Code Online (Sandbox Code Playgroud)
谢谢你们.
我仍然在等待你解决这个微妙问题的宝贵经验.