怎么在python中初始化进程池Pool

本篇文章为大家展示了怎么在python中初始化进程池Pool,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

目前创新互联已为成百上千家的企业提供了网站建设、域名、网页空间、网站改版维护、企业网站设计、桥西网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

python的数据类型有哪些?

python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮点型)。2.字符串,分别是str类型和unicode类型。3.布尔型,Python布尔类型也是用于逻辑运算,有两个值:True(真)和False(假)。4.列表,列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型。5. 元组,元组用”()”标识,内部元素用逗号隔开。6. 字典,字典是一种键值对的集合。7. 集合,集合是一个无序的、不重复的数据组合。

1、说明

初始化Pool时,可以指定最大流程数。当新请求提交到Pool时,如果池未满,则创建新流程以执行该请求。但是,如果池中的流程数达到指定的最大值,则等待该请求,直到池中的流程结束为止,以之前的流程执行新的任务。

2、实例

# -*- coding:utf-8 -*-
import os, time, random
from multiprocessing import Pool
 
 
def worker(msg):
    t_start = time.time()
    print("%s开始执行,进程号为%d" % (msg,os.getpid()))
    # random.random()随机生成0~1之间的浮点数
    time.sleep(random.random()*2)
    t_stop = time.time()
    print(msg,"执行完毕,耗时%0.2f\n" % (t_stop-t_start))
 
    
def main():
    po = Pool(3)  # 定义一个进程池,最大进程数3
    for i in range(0,10):
        # Pool().apply_async(要调用的目标,(传递给目标的参数元祖,))
        # 每次循环将会用空闲出来的子进程去调用目标
        po.apply_async(worker,(i,))
 
    print("----start----")
    po.close()  # 关闭进程池,关闭后po不再接收新的请求
    po.join()  # 等待po中所有子进程执行完成,必须放在close语句之后
    print("-----end-----")
    
   
if __name__ == "__main__":
    main()

上述内容就是怎么在python中初始化进程池Pool,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


网页标题:怎么在python中初始化进程池Pool
浏览路径:http://hbruida.cn/article/pidhec.html