关于python:Python多任务编程获取进程编号

46次阅读

共计 1101 个字符,预计需要花费 3 分钟才能阅读完成。

获取过程编号的目标:

为了验证主过程和子过程的关系,可知子线程是由哪个主过程创立进去的。

Python 获取过程编号 id:

# 获取以后过程的编号
os.getpid()

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

实现步骤:

1. 导入 os 包

import os

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

os.getpid()
os.getppid()

3. 获取过程名

print(multiprocessing.current_process())

代码实现:

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 建设的子过程。

正文完
 0