获取进程编号的目的:
为了验证主进程和子进程的关系,可知子线程是由哪个主进程创建出来的。
Python获取进程编号id:
#获取当前进程的编号os.getpid() #获取父进程的编号os.getppid()
实现步骤:
1.导入os包
importos
2.获取进程编号、父进程编号
os.getpid() os.getppid()
3.获取进程名
print(multiprocessing.current_process())
代码实现:
importmultiprocessingimporttime#导入os包importosdefdance(): #获取dance的进程编号print('dance:',os.getpid()) #获取dance父进程的编号print("dance父进程:", os.getppid()) #获取当前进程 查看是由那个进程执行的print('dance:',multiprocessing.current_process()) foriinrange(5): print("dance") time.sleep(2) defsing(): #获取sing进程编号print('sing:',os.getpid()) #获取sing父进程的编号print("sing父进程:", os.getppid()) #获取当前进程 查看是由那个进程执行的print('sing:',multiprocessing.current_process()) foriinrange(5): print("sing") time.sleep(2) if__name__=='__main__': #获取当前进程(主进程)编号 print('main:',os.getpid()) #获取当前进程 查看是由那个进程执行的print('main:',multiprocessing.current_process()) dance_process=multiprocessing.Process(target=dance,name='dance_process') print(dance_process) sing_process=multiprocessing.Process(target=sing,name='sing_process') print(sing_process) dance_process.start() sing_process.start()
通过运行上面的代码,我们可以发现:
main的进程编号=sing的父进程编号=dance的父进程编号
这样子我们得出dance_process和sing_process是由main建立的子进程。