Python multiprocessing.Pool

python使用多进程,有一个非常简单的方法,使用multiprocessing库,而其中最简单的类,Pool,下面就展示一下如何使用,以及效果

Python multiprocessing.Pool_第1张图片

先解释主函数:Pool是用来初始化进程池的,atexit.register在程序退出的时候注销掉进程池(有点像go语言中的defer)。_join是一个私有函数,作用是等待所有的工作进程返回。

Python multiprocessing.Pool_第2张图片

_sleepdo_proc是一个模拟子进程工作的,可以设置工作时间isleep,myname用来区分工作子进程。

_join就是等待所有的task返回,这种阻碍主要是通过ApplyResult.get来实现

下面我们看看use_pool_atexit执行结果

Python multiprocessing.Pool_第3张图片

Jhon最早进入工作,但是最后退出工作,这和程序demo的设计相符。

你可能感兴趣的:(入门,python)