进程池的用法

Posted ouyang99-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程池的用法相关的知识,希望对你有一定的参考价值。

这是一个函数,没有返回值和其他的函数交互的方式

from concurrent.futures import ThreadPoolExecutor
import time
pool = ThreadPoolExecutor(50)

def f1():
    print(hello)
    time.sleep(1)


for i in range(200):
    pool.submit(f1)

要是有函数参数的调用

    from concurrent.futures import ThreadPoolExecutor
import time
# import random
pool = ThreadPoolExecutor(50)

def f1(i):
    print(hello)
    time.sleep(1)
    i+=1
    return i

def f2(i):
    i=i.result()#接受到的i是一个对象,所以要result一下
    time.sleep(1)
    print(i)




for i in range(200):
    #此处的i是f1的参数,把f1的返回值用于f2的时候需要使用函数的回调
    pool.submit(f1,i).add_done_callback(f2)

 

以上是关于进程池的用法的主要内容,如果未能解决你的问题,请参考以下文章