Python多进程编程的getpid和getppid的用法,由于Windows系统不支持fork,本经验基于Ubuntu虚拟机的Python3编写。getpid打印自身进程号,getppid打印父进程进程号。
工具/原料
Python3
Ubuntu虚拟机
方法/步骤
1、打开Ubuntu虚拟机,在桌面空白处右键--打开终端
2、在终端使用gedit编辑器,创建一个‘pid.py’文件,命令如下:geditpid.py
3、在pid.py文件,编写代码如下:importosimporttimeprint(os.getpid())getpid的作用是获取当前的进程号
4、保存代码,在终端运行代码,命令如下:python3pid.py打印出当前进程号
5、修改代码,使主进程通过fork首疏扌熘创建一个子进程,代码如下:importosimporttimeret=os.fork()ifret==0:#子进程 print(os.ge墉掠载牿tpid()) print(os.getppid())else:#父进程 print(os.getpid())
6、保存代码,使用命令在终端运行代码python3pid.py
7、打印出的内容如下图,在打印出的内容分析可艮劁飨戽以发现有两行是相同的,因为在子进程中调用了getppid函数,这个函数打印出的是父进程的进程号,而父进程自身又调用了getpid打印音浆纪娟出自身的进程号,所以父进程的进程号总共打印了两次。