前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python多任务编程——获取进程编号

Python多任务编程——获取进程编号

原创
作者头像
落雨
发布2022-02-22 21:53:09
30.4K0
发布2022-02-22 21:53:09
举报
文章被收录于专栏:落雨的专栏

获取进程编号的目的:

为了验证主进程和子进程的关系,可知子线程是由哪个主进程创建出来的。

Python获取进程编号id:

代码语言:javascript
复制
#获取当前进程的编号
os.getpid()

#获取父进程的编号
os.getppid()

实现步骤:

1.导入os包

代码语言:javascript
复制
import os

2.获取进程编号、父进程编号

代码语言:javascript
复制
os.getpid()
os.getppid()

3.获取进程名

代码语言:javascript
复制
print(multiprocessing.current_process())

代码实现:

代码语言:javascript
复制
import multiprocessing
import time

#导入os包
import os


def dance():
    #获取dance的进程编号
    print('dance:',os.getpid())
    #获取dance父进程的编号
    print("dance父进程:", os.getppid())
    #获取当前进程 查看是由那个进程执行的
    print('dance:',multiprocessing.current_process())
    for i in range(5):
        print("dance")
        time.sleep(2)

def sing():
    #获取sing进程编号
    print('sing:',os.getpid())
    #获取sing父进程的编号
    print("sing父进程:", os.getppid())
    #获取当前进程  查看是由那个进程执行的
    print('sing:',multiprocessing.current_process())
    for i in range(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建立的子进程。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 获取进程编号的目的:
  • Python获取进程编号id:
  • 实现步骤:
    • 1.导入os包
      • 2.获取进程编号、父进程编号
        • 3.获取进程名
        • 代码实现:
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档