multiprocess模块

Posted mmyy-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了multiprocess模块相关的知识,希望对你有一定的参考价值。

multiprocess模块

从字面意思理解就是:多进程模块,具体来讲是python中一个操作、管理进程的包

process模块

process模块是一个创建进程的模块,借助这个模块,可以完成进程的创建

import os ,time
from multiprocessing import Process
def process1():
    print(process1:,os.getppid())
    time.sleep(1)

print(os.getppid())
if __name__ == __main__: #这里不写会报错,在mac系统和linux系统不写可以
    # 在Windows操作系统中由于没有fork(linux操作系统中创建进程的机制),在创建子进程的时候会自动
    # import 启动它的这个文件,而在
    # import 的时候又执行了整个文件。因此如果将process()
    # 直接写在文件中就会无限递归创建子进程报错。所以必须把创建子进程的部分使用if
    # __name__ ==‘__main__’ 判断保护起来,import 的时候 ,就不会递归运行了。
    p=Process(target=process1) #调用函数
    p.start() #启动函数

给process传参数

import os
import time
from multiprocessing import Process
def process1(n,name):
    print(process1:,os.getppid())
    print(n:,n,name)
    time.sleep(1)
 
 
if __name__ == __main__:
    print(os.getppid())  # 获取当前进程id
    p = Process(target=process1,args=[1,alex])  # 调用函数并传参
    p.start()  # 启动进程

 

以上是关于multiprocess模块的主要内容,如果未能解决你的问题,请参考以下文章

multiprocessing模块

Python多进程 - subprocess & multiprocess

multiprocessing模块

有没有办法在嵌套函数或模块中使用 multiprocessing.pool ?

进程的创建-multiprocessing

multiprocessing模块创建进程