python获取进程编号(目的、获取当前进程编号、根据编号杀死指定进程号、获取当前父进程编号)
1. 获取进程编号的目的
获取进程编号的目的是验证主进程和子进程的关系,可以得知子进程是由那个主进程创建出来的。
获取进程编号的两种操作
- 获取当前进程编号
- 获取当前父进程编号
2. 获取当前进程编号
os.getpid() 表示获取当前进程编号
示例代码:
import multiprocessing
import time
import os# 跳舞任务
def dance():# 获取当前进程的编号print("dance:", os.getpid())# 获取当前进程print("dance:", multiprocessing.current_process())for i in range(5):print("跳舞中...")time.sleep(0.2)# 扩展:根据进程编号杀死指定进程os.kill(os.getpid(), 9) # 强制杀死进程# 唱歌任务
def sing():# 获取当前进程的编号print("sing:", os.getpid())# 获取当前进程print("sing:", multiprocessing.current_process())for i in range(5):print("唱歌中...")time.sleep(0.2)if __name__ == '__main__':# 获取当前进程的编号print("main:", os.getpid())# 获取当前进程print("main:", multiprocessing.current_process())# 创建跳舞的子进程# group: 表示进程组,目前只能使用None# target: 表示执行的目标任务名(函数名、方法名)# name: 进程名称, 默认是Process-1, .....dance_process = multiprocessing.Process(target=dance, name="myprocess1")sing_process = multiprocessing.Process(target=sing)# 启动子进程执行对应的任务dance_process.start()sing_process.start()
执行结果:
3. 获取当前父进程编号
os.getppid() 表示获取当前父进程编号
示例代码:
import multiprocessing
import time
import os# 跳舞任务
def dance():# 获取当前进程的编号print("dance:", os.getpid())# 获取当前进程print("dance:", multiprocessing.current_process())# 获取父进程的编号print("dance的父进程编号:", os.getppid())for i in range(5):print("跳舞中...")time.sleep(0.2)# 扩展:根据进程编号杀死指定进程os.kill(os.getpid(), 9) # 直接杀死该进程# 唱歌任务
def sing():# 获取当前进程的编号print("sing:", os.getpid())# 获取当前进程print("sing:", multiprocessing.current_process())# 获取父进程的编号print("sing的父进程编号:", os.getppid())for i in range(5):print("唱歌中...")time.sleep(0.2)if __name__ == '__main__':# 获取当前进程的编号print("main:", os.getpid())# 获取当前进程print("main:", multiprocessing.current_process())# 创建跳舞的子进程# group: 表示进程组,目前只能使用None# target: 表示执行的目标任务名(函数名、方法名)# name: 进程名称, 默认是Process-1, .....dance_process = multiprocessing.Process(target=dance, name="myprocess1")sing_process = multiprocessing.Process(target=sing)# 启动子进程执行对应的任务dance_process.start()sing_process.start()
执行结果:
python获取进程编号(目的、获取当前进程编号、根据编号杀死指定进程号、获取当前父进程编号)相关推荐
- linux父进程发出退出信号,为什么prctl没有如小弟我所预期的设置一个父进程退出发给子进程信号...
为什么prctl没有如我所预期的设置一个父进程退出发给子进程信号? 我写了一个小程序,在fork出的子进程中使用prctl,设置父进程退出后自动发送给子进程退出信号. #include #includ ...
- 子进程中获取父进程id_进程全家桶,看这一篇就够了 | 原力计划
作者 | 看,未来 责编 | 王晓曼 出品 | CSDN博客 初见进程,先查一下户口 1.进程环境 进程控制块PCB:就是进程在操作系统中的"户口",具体实现是 task_stru ...
- python 子进程和父进程参数传递
最近遇到了一个非常麻烦的问题: 复杂的讲, 由于对grpc的了解仅是皮毛, 导致grpc的服务端收到数据后, 没有办法直接使用这些数据, 因为项目中运行grpc服务端被本人封到了一个类一个子进程中, ...
- linux进程文件描述符 vnode,从flock引发的一个bug谈起(1) 进程的文件描述符
引子 前两天我们QA发现了一个比较有意思的bug,我细细分析一下,发现多个进程卡死在一个·配置文件上.简单的说,我们为了防止多个进程同时写同一个配置文件,将文件格式破坏,我们用了flock,对于写打开 ...
- 子进程及时知道父进程已经退出的最简单方案
[精彩] 子进程及时知道父进程已经退出的最简单方案? http://www.chinaunix.net 作者:yuonunix 发表于:2003-10-31 10:14:14 [发表评论] [查看原 ...
- Linux进程3:父进程等待(wait,waitpid)子进程退出并收集子进程退出状态,僵尸进程
父进程等待(wait,waitpid)子进程退出并收集子进程退出状态 1.父进程为什么要等待子进程退出? 创建子进程目的:------干活 我们要知道干活结束没. 子进程退出状态不被收集,变成僵尸进程 ...
- Windows编程—杀死指定路径程序文件的进程
前言 由于Windows命令 taskkill 无法通过程序文件的完整路径匹配来杀死指定进程,通过程序名称容易误杀进程,所有笔者做了一个简单的封装做了个mytaskkill.exe,用来杀死指定路径的 ...
- 进程控制 父进程子进程 fork pid
进程:正在运行的程序(分配资源:内存,CPU,IO等) 程序:有限指令的集合(静态:没有执行,存放在外存) 并发:多个任务"同时"执行. (处理器某一时刻最多只运行一个进程) 1. ...
- linux 父子进程结束,Linux下让父进程结束后,子进程自动结束
在多进程编程的时候,经常会遇到这样的情况.父进程创建了一堆子进程,当遇到错误或者操作失误的时候把父进程关闭了,但是子进程还在跑,不得不一个一个地杀死子进程,或者使用ps,grep,awk,kill来配 ...
- 进程 线程 多进程 多线程 父进程 子进程
1. 进程定义: 进程就是一个程序在一个数据集上的一次动态执行过程.进程一般由程序.数据集.进程控制块三部分组成.我们编写的程序用来描述进程要完成哪些功能以及如何完成:数据集则是程序在执行过程中所需要 ...
最新文章
- WPF的消息机制(三)- WPF内部的5个窗口之处理激活和关闭的消息窗口以及系统资源通知窗口...
- fullcalendar 显示的时间间隔只有四十五分钟_Linux命令行监控程序,还能实时高亮显示差异,我就选它了...
- 数据库隔离级别---MySQL的默认隔离级别就是Repeatable,Oracle默认Read committed,最高级别Serializable
- 【LeetCode】3.无重复字符串的最长子串
- JDK,JRE,JVM三者关系
- “超大杯”版小米10不仅有120W超级快充,电池也要比传闻大
- iview使用之怎样通过render函数在table组件表头添加图标及判断多个状态
- 《语音识别技术》.ppt
- Windows 7 “Tunnel adapter Local Area Connection” 现象(IPv6)
- sql server中扩展存储过程随笔
- python标准输入多行文字_python如何输入多行数据
- 怎么设置计算机网络访问权限,Win7无Internet访问权限怎么解决?
- 秦殇千年轮回java游戏下载,智云稳定器如何拍旋转画面 使用稳定器拍摄画面方法...
- 任正非:股权激励拯救了华为!
- 如何在网页标题前添加图标
- C++ AMP实战:绘制曼德勃罗特集图像
- promise解决回调地狱的问题
- NOIP模拟赛套路技巧经验总结
- wps文档排版之公式的应用
- 抖音视频播放量 视频搜索接口算法 XG XK 算法 设备注册