Guido van Rossum在2014年关于郁金香/Asyncio shows the slide的演讲中:
Tasks vs coroutines
比较:
- res=某个合作项目的yield 率(…)
- res=任务的yield 率(一些协同程序(…)
任务可以在不等待的情况下取得进展
- As log as you wait for something else
- i、 e.yield 率
我完全没有抓住重点.
在我看来,这两种 struct 都是相同的:
在裸协同路由的情况下——它得到调度,因此无论如何都会创建任务,因为调度器与任务一起运行,那么协同路由调用方协同路由将被挂起,直到被调用方完成,然后可以自由地继续执行.
在Task
个情况下,新任务被安排,调用方协同路由等待其完成.
在这两种情况下代码执行的方式有什么不同,开发者在实践中应该考虑哪些影响?
p、 s.