pool实例对象有两个非常实用的方法
1:submit(self, fn, *args, **kwargs):用于提交单个任务
2:map(self, fn, *iterables, timeout=None, chunksize=1):类似高阶函数map,可以提交任务,且传递一个可迭代对象,返回任务处理迭代对象的结果
from concurrent.futures import ThreadPoolExecutor
import requests
def fetch_url(url):
result = requests.get(url=url, )
return result.text
# 创建10个线程队列的线程池
pool = ThreadPoolExecutor(10)
# 获取任务返回对象
a = pool.submit(fetch_url, 'http://www.yuxiaokeji.cn')
b = pool.submit(fetch_url, 'http://www.yuxiaokeji.cn')
# 取出返回的结果
x = a.result()
y = b.result()
print(x)
print(y)
网友评论