py07_05:多进程之pool(进程池)

概念:多个进程存储在pool里,就形成了进程池。

作用:  由于创建和消毁进程是需要大量的资源维持的,所以我们可以把一些进程放到pool里。

 

 

 

 

 

 

 

 

 

from multiprocessing import Pool
import os
import time
import random


def worker(msg):
    t_start = time.time()
    print('%s开始执行任务,进程号为%d' % (msg, os.getpid()))
    time.sleep(random.random() * 2)
    t_stop = time.time()
    print(msg, '执行完毕,用时%0.2f' % (t_stop - t_start))


def main():
    po = Pool(3)
    for i in range(0, 10):
        po.apply_async(worker, (i,))

    print('start'.center(50, '-'))
    po.close()
    po.join()
    print('end'.center(50, '='))


if __name__ == '__main__':
    main()
上图代码

 

posted on 2020-03-26 17:58  yeyu1314  阅读(100)  评论(0编辑  收藏  举报