import time
import random
from multiprocessing import Pool
def f(index):
print("{} in".format(index))
sum = 0
for i in range(10):
sum+=i
return "process {} sum {} ".format(index,sum)
def huidiao(s):
print("output {}".format(s))
def main():
pool = Pool(processes=3) # set the processes max number 3
for i in range(11,20):
result = pool.apply_async(f, (i,),callback=huidiao)
pool.close()
pool.join()
if __name__ == "__main__":
main()
pool.apply_async
有一个回调函数的参数,回调函数参数就是多线程函数return的返回值。如上面程序 huidiao(s)中的s 就是f函数的return
网友评论