gpt4 book ai didi

python - 如何终止Python Popen创建的进程

转载 作者:行者123 更新时间:2023-12-01 09:15:19 31 4
gpt4 key购买 nike

我使用 proc = subprocess.Popen("calc.exe") 运行 calc.exe(Windows 10、Python 3.6),然后使用 time.sleep(time) code> 然后想要终止进程: os.kill(proc.pid, -9)os.kill(proc.pid, signal.SIGTERM) 给我错误

"Access Denied".

我也尝试过 proc.terminate - 它没有帮助。

我还注意到 proc.pid 给出的 PID 与任务管理器中显示的 PID 不同。有什么想法如何终止我的进程吗?

谢谢!

最佳答案

您可以尝试使用Windows来终止该进程。

command = "Taskkill /IM calc.exe /F"
proc = subprocess.Popen(command)

import os
os.system("taskkill /im Calculator.exe /f")

如果你想确定的话,尝试递归杀死!!

def kill_process(proc):
# Check process is running, Kill it if it is,

# Try to kill the process - 0 exit code == success

kill = "TaskKill /IM {} /F".format(proc)

res = subprocess.run(kill)

if res == 0:
return True # Process Killed
else:
kill_process(proc) # Process not killed repeat until it is!

kill_process('Calculator.exe')

关于python - 如何终止Python Popen创建的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51325685/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com