Skip to content
大纲

Python程序自定义进程名

发布日期:2021-02-08 22:45:36最后更新:2021-02-08 22:45:36

笔者在公司里实际项目开发中遇到过一个问题,就是在开发多进程模型的程序里,好家伙,进程名都是 python ,有种“双兔傍地走,安能辨我是雄雌”的感觉,因为涉及到运行时态要动态的 kill 掉某个进程,搞进程通讯又显得复杂……直接通过进程名 kill 不香么,于是便有了本文中的方法……

1 环境介绍

  1. 操作系统环境,笔者使用的是CentOS 7.8 ,其他发行版本Linux适用。
  2. python环境,Python 3.6.8

2 安装 setproctitle

PS: 这里 -i https://pypi.douban.com/simple 参数为可选项,是临时使用国内镜像资源进行安装,因为笔者直接使用默认镜像会异常的慢,甚至直接卡住……

bash
pip3 install setproctitle -i https://pypi.douban.com/simple

3 使用方法及相关对比说明

3.1 创建示例python文件 test.py

PS: 这里简单的执行一个死循环

python
while True:
pass

3.2 python后台运行该文件并查看进程

PS:我们加 & 以后台形式运行该程序

  1. 后台运行该程序
bash
python3 test.py &
  1. 查看进程
bash
ps aux

3.3 修改示例文件(引用setproctitle库)

python
import setproctitle
setproctitle.setproctitle("myProcess")
while True:
pass

3.4 python 后台运行该文件并查看进程名

  1. 后台运行该进程
bash
python3 test.py &
  1. 查看进程 图3

PS: 此时 COMMAND 这一列中已经显示为我们自定义的进程名了,我们可以使用pkill命名直接根据进程名进行 kill 进程,如 pkill myProcess 即可结束 myProcess 进程。

bash
ps aux

4 坑点

进程名超过15个字符后,当我们使用 pkill 命令时会出现结束不了指定的进程,具体原因请参考博文

https://blog.csdn.net/whycold/article/details/11771841

欢迎朋友们多多指正,博主将对文章未详尽的部分进行重新整理,感谢您的指导。

作者:疯狂开发者007

文章标题:Python程序自定义进程名

发布时间:2021-02-08 22:45:36

最近更新:2021-02-08 22:45:36

许可协议: 所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议,转载请保留原文链接及作者信息。