码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2019-02-14 22:18:11      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:rand   结果   __name__   指定   close   时间   回调   开启   子进程   

将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网编_进程池的回调函数

标签:rand   结果   __name__   指定   close   时间   回调   开启   子进程   

原文地址:https://www.cnblogs.com/gzying-01/p/10380824.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!