当我运行以下代码时:
p = subprocess.Popen("...", shell=True)
if p.poll() == None:
p.kill()
该过程根本没有被杀死。我在 Windows 上。
我以为是因为多线程,我在一个线程中运行它,还是一样的。
你有什么想法为什么会发生这种情况?
谢谢
更新
我找到了导致问题的代码:
while cur_time < self.time_limit:
if p.poll() != None:
too_much_time = False
break
time.sleep(0.1)
cur_time += 0.1
我运行它以确保该过程不会超过时间限制。显然这就是为什么我不能杀死这个过程。