python 多进程设置 整理版本1

2019-02-14 14:38:39 浏览数 (1)

在Python中,实现多进程是比较容易的。我们可以使用multiprocessing进行进程的创建,比如说

代码语言:javascript复制
 import multiprocessing as mp
    p = mp.Process(target=run_proc, args=('fireling',), name='Run_procProcess')
    p.start()
    p.join()

这样就创建了一个进程,用p表示,其中run_proc表示你用子进程运行的函数。

如果觉得这样不过瘾,还可以采用进程池创建多个进程,涉及到了两种用法:pool-apply用法和pool-map用法,本质上跟创建单个进程是一样的。

还是要用到multiprocessing包,先创建一个进程池

代码语言:javascript复制
    p = mp.Pool()
    p.map(run_proc, [i for i in range(m)])
    p.close()
    p.join()

进程测试

代码语言:javascript复制
from multiprocessing import Process
import os

def info(title):
    print(title)
    print('module name:', __name__)
    print('parent process:', os.getppid())
    print('process id:', os.getpid())

def f(name):
    info('function f')
    print('hello', name)

if __name__ == '__main__':
    info('main line')
    p = Process(target=f, args=('bob',))
    p.start()
    p.join()
代码语言:javascript复制
import multiprocessing as mp
'''

*

进程示例
----

***
'''
def run_proc(test):
    print('sad')
    print('fef')
    print(test)

if __name__=='__main__':
    run_proc('main')
    p = mp.Process(target=run_proc, args=('fireling',), name='Run_procProcess')
    p.start()
    p.join()

0 人点赞