进程池和线程池

发布时间 2023-03-31 17:06:23作者: xiaolisolove

创建池的目的

节省资源,防止内存占满的情况,最主要的是提高效率

创建进程池

导入模块

from concurrent.futures import ProcessPoolExecutor

p_pool = ProcessPoolExecutor(5) #创建一个进程池,里面放5个进程

p_pool.submit(函数,参数).add_done_callback(回调函数名)

**例子**

from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor

def res(a,b):
return a+b

回调函数

def callback(data):
#函数res的返回值就是data,但是直接打印data是内存地址,需要配合result
print(data.result())

if name == 'main':
#创建一个有五个进程的进程池
p_pool = ProcessPoolExecutor(5)
#回调函数
p_pool.submit(res,1,2).add_done_callback(callback)