首页 > 其他 > 详细

异步调用回调实例

时间:2018-06-19 15:34:42      阅读:189      评论:0      收藏:0      [点我收藏+]

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time    : 2018/6/19 14:30
# @File    : 进程池线程池练习.py

from concurrent.futures import ThreadPoolExecutor
import requests
import time


def get(url):  #
    print(‘GET %s‘ % url)
    response = requests.get(url)
    # print(response.text)
    time.sleep(3)
    return {‘url‘: url, ‘content‘:response.text}


def parse(res):
    res = res.result()
    print(‘%s parse res is %s ‘ % (res[‘url‘], len(res[‘content‘])))
    # print(‘parse res is %s‘ % len(res))


if __name__ == ‘__main__‘:
    urls = {
        ‘http://www.cnblogs.com/Linhaifeng‘,
        ‘https://www.python.org‘,
        ‘https://www.openstack.org‘,
    }

    pool = ThreadPoolExecutor(2)

    for i in urls:
        pool.submit(get, i).add_done_callback(parse)

异步调用回调实例

原文:https://www.cnblogs.com/fmgao-technology/p/9198577.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!