Python网编_进程池的回调函数

Posted 码码忽忽

tags:

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

将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()
回调函数一般用于爬虫,开启多进程去爬多个网站的内容,哪个先返回就先处理哪个



以上是关于Python网编_进程池的回调函数的主要内容,如果未能解决你的问题,请参考以下文章

第36篇 多进程的数据共享,进程池的回调函数,线程 什么是GIL锁,Threading模块记

进程间的数据共享进程池的回调函数和线程初识守护线程

python3 进程池回调函数

池和回调函数

python进程池中的回调函数

进程池与回调函数与正则表达式和re爬虫例子