我如何在Windows上杀死进程?
我正在开始这个过程
self.p = Process(target=self.GameInitialize, args=(testProcess,))
self.p.start()
Run Code Online (Sandbox Code Playgroud)
我试过了
self.p.kill()
self.p.terminate()
os.kill(self.p.pid, -1)
os.killpg(self.p.pid, signal.SIGTERM) # Send the signal to all the process groups
Run Code Online (Sandbox Code Playgroud)
错误
Process Object has no Attribute kill
Process Object has no Attribute terminate
Access Denied
Run Code Online (Sandbox Code Playgroud)
我不能用 .join.
Tin*_*rus 10
subprocess.call(['taskkill', '/F', '/T', '/PID', str(self._active_process.pid)])
Run Code Online (Sandbox Code Playgroud)
这是因为self._active_process.kill()不够
在Windows上,os.killpg将无法工作,因为它向进程ID发送信号以终止.现在就是你在Windows上杀死一个进程的方法,而你必须使用win32 API TerminateProcess来终止进程.
因此,您可以通过以下窗口终止进程:
import signal
os.kill(self.p.pid, signal.CTRL_C_EVENT)
Run Code Online (Sandbox Code Playgroud)
如果上述方法不起作用,请尝试signal.CTRL_BREAK_EVENT改为.
| 归档时间: |
|
| 查看次数: |
6231 次 |
| 最近记录: |