python协程asyncio执行_Python 模块 asyncio-并发执行多个协程

任务 Task 是和事件循环交互的一个主要方式。任务是在协程里运行的,继承自 Future,所以其他的协程可以等待任务 Task 完成并获取返回值。

开启任务

使用 create_task() 方法创建任务 Task 实例,任务创建后就被事件循环管理,等待执行完后才返回事件循环。

执行:

取消任务

从 create_task() 方法创建任务后,可以调用任务的方法 cancel() 取消任务。

执行:

由于取消了任务,执行到 await 就触发了异常。

任务传递

使用函数 ensure_future() 返回一个任务 Task,它可以传递给其他的协程执行,而不需要知道它的来源。

执行:

并行执行多个协程

协程以线性的方式运行时很容易管理,更复杂的情况是允许一个协程同时等待多个协程。

通常把一个操作分成多个部分,然后分别执行他们,例如从不同的资源下载文件或者查询远端接口 API。这个时候,执行的顺序是不重要的,wait

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值