有时候在使用 Python 程序的时候 , 我们需要终止执行某个进程或线程,本文将从以下三个角度讲解如何在 Python 中终止进程:
1. 使用 os 模块终止进程
文章插图
2. 使用 signal 模块终止进程
3. 使用 multiprocessing 模块终止进程
1. 使用 os 模块终止进程
在 Python 中,os.kill() 函数可以用来给指定进程发信号,从而实现终止进程的目的 。比如 , 执行下面的代码可以杀死进程号为 12345 的进程:
import os
os.kill(12345, signal.SIGKILL)
2. 使用 signal 模块终止进程
signal 模块是 Python 程序中用于处理和发送各种信号的模块 。和 os 模块一样,signal 模块也能用于终止进程 。例如 , 下面的代码实现了在接收到信号 9 时杀死进程的功能:
import signal
【python怎么终止进程?】import os
def handler(signum, frame):
os.kill(os.getpid(), signal.SIGINT)
signal.signal(signal.SIGTERM, handler)
3. 使用 multiprocessing 模块终止进程
如果要终止一个正在执行的进程中的代码块,可以使用 Python 内置的 multiprocessing 模块中的 Process 对象的 terminate() 方法 。例如,下面的代码演示了如何终止一个进程:
import multiprocessing
def worker():
while True:
print('working...')
p = multiprocessing.Process(target=worker)
p.start()
p.terminate()
总结
以上就是三种在 Python 中终止进程的方法 。使用 os 模块是最常见的方法,但是需要记住信号的含义 。signal 模块也可以实现杀死进程的功能,但是需要处理一些信号处理方面的细节 。对于大小写处理,一般采用 python(Python为默认不区分大小写的)一种简单明了的写法,总体感觉是效率高而且代码简单 , 建议读者掌握上述三种方法 。
推荐阅读
- Python Flask框架实现简单加法工具过程解析
- python输出列表差集?
- cdr格式怎么转换?
- pr文字怎么调颜色
- 怎么把视频转成wmv格式
- 适马镜头跑焦怎么解决
- python字符的获取方式
- python多线程中消息队列如何实现?
- python如何设置环境变量?
- print输出占用内存吗?