📅  最后修改于: 2023-12-03 14:55:27.566000             🧑  作者: Mango
在开发 Python 代码时,有时会遇到后台进程无法退出或持续运行的情况,这时候需要手动杀死进程来解决问题。本文介绍几种常用的杀死 Python 后台进程的方法。
在命令行中可以使用 kill
或 taskkill
命令来杀死进程。在 Linux/Mac 上,使用 kill
命令:
# 先查询进程号
$ ps -ef | grep python
# 返回类似以下信息
530044 5017 8888 0 12:30下午 ttys005 0:00.36 python app.py
# 此处 5017 为进程号,使用 kill 命令杀死
$ kill 5017
在 Windows 上,使用 taskkill
命令:
# 先查询进程号,注意这里使用的是 findstr 而不是 grep
$ tasklist | findstr "python"
# 返回类似以下信息
python.exe 5017 Console 1 108,044 K
# 此处 5017 为进程号,使用 taskkill 命令杀死
$ taskkill /PID 5017 /F
其中 /F
参数表示强制终止进程。
Python 中提供了 os
和 signal
模块来管理进程。可以调用 os.kill()
方法来杀死指定进程,示例如下:
import os
pid = 5017 # 进程号
os.kill(pid, signal.SIGTERM) # SIGTERM 为停止进程信号,可替换为其他可用信号
psutil
是一个跨平台的进程和系统监控库,可以方便地查询和管理进程。使用 psutil
库,可以轻松地找到并杀死指定进程,示例如下:
import psutil
pid = 5017 # 进程号
process = psutil.Process(pid)
process.kill()
以上介绍了几种常用的杀死 Python 后台进程的方法,可以根据具体情况选择合适的方式进行操作。