我知道多次问过这个问题。我已经尝试了所有这些并且失败了,这就是我再次来到这里的原因。
以下是我的尝试:
pid_foo = "/proc/"+str(fpid[0])
ret = os.path.exists(pid_foo)
if ret == False:
running = stop
接下来是下面的内容:
procs = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, preexec_fn=os.setsid)
ret = procs.poll()
if ret != None:
running = stop
对于第一种情况,即使进程已经死亡,它也会继续执行。 在第二种情况下,即使进程已经死亡,我也会得到以下结果
<bound method Popen.poll of <subprocess.Popen object at 0x1f39dd0>>
知道这是什么错误吗?或者是否有另一种方法可以杀死这个过程?