回调函数的定义非常简单,就是当一个子进程结束之后,它会将返回值作为一参数返回给主进程中指定的函数并执行这个函数。
from multiprocessing import Pool
def func1(i):
print("in func1")
return i*i
def func2(n):
print("in func2")
print(n)
if __name__ == '__main__':
pool = Pool(5)
pool.apply_async(func1,args=(10,),callback=func2)
pool.close()
pool.join()
func2函数是在主进程中执行的,它接收了func1执行完毕的返回值并打印。