python 并发 ThreadPoolExecutor

asyncio基础

asyncio协程

asyncio并发下载

asyncio, aiohttp爬虫    -> 这里写了一些原理和使用asyncio需要注意的东西, 对asyncio 有些基础的可以看看

python asyncio aiohttp 异步下载 完整例子

用 c / c++ 分别实现的简单线程池  ->对线程池实现有兴趣的可以看看

正文:

Executor是一个抽象类,子类:

ThreadPoolExecutorProcessPoolExecutor ,一个线程池,一个进程池.

future对象:在未来的某一时刻完成操作的对象.

submit方法可以返回一个future对象,此对象直接返回,等线程函数执行完后把return的数据再set_result到future对象中; 

下面实现了submit, map 与 as_completed的差别 , 下面的例子中都没有使用with ,实际使用时需要调用shutdown , 或用with

 

 

#线程执行的函数
def add(n1,n2):
    v = n1 + n2
    print('add :', v , ', tid:',threading.currentThread().ident)
    time.sleep(n1)
    return v
#通过submit把需要执行的函数扔进线程池中.
#submit 直接返回一个future对象
ex = ThreadPoolExecutor(max_workers=3)      #制定最多运行N个线
  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值