windows Popen子进程创建两个进程

omqzjyyz  于 2023-03-31  发布在  Windows
关注(0)|答案(1)|浏览(201)

我用这段代码为我的程序做一个killswitch
killSwitch = Popen(['killswitch.exe', str(pid)])
它在主线程的pid中馈送,如果主线程变得无响应,我可以使用keybind来杀死它。然而,当正常关闭时,不运行killswitch,它永远不会关闭。所以我需要处理进程,但使用popen创建了两个进程,只报告了一个,执行kill切换。kill()不起作用,因为一个进程仍处于打开状态。我也不想taskkill killSwitch。exe,因为如果其他示例打开,我不想关闭其他示例的killSwitch。有没有办法让它只打开一个进程或关闭两个进程?

insrf1ej

insrf1ej1#

我能够解决我的问题通过使用
os.system(f'taskkill /f /t /pid {killSwitch.pid}')
这会杀死整个进程树,尽管我只有一个pid,而不会中断其他示例。

相关问题