将n个任务交给n个进程去执行
每个进程在执行完毕以后会有一个返回值,这个返回值交给callback函数指定的那个函数去处理
这样的话全部的进程哪个执行的最后快,哪个就能够先进性统计工做
这样就能在最短的时间内获得咱们想要的结果
import time import random from multiprocessing import Pool def get(i): # 使用i模拟网站地址 在子进程中执行 time.sleep(random.random()) # 模拟不一样的网站返回数据的时间 print(i,'从网页上获取一个网页的内容') return i,'网页内容'* i def call_back(content): # 在主进程执行 print(content) if __name__ == '__main__': p = Pool(5) ret_1 = [] for i in range(10): p.apply_async(get,args=(i,),callback=call_back) p.close() p.join()
回调函数通常用于爬虫,开启多进程去爬多个网站的内容,哪一个先返回就先处理哪一个