擅长:python、mysql、java
<p>第一个答案涵盖了很多。我只想让你知道一个更简单的抽象。
@通用协同程序在</p>
<pre><code>res = yield foo()
</code></pre>
<p>协同程序的思想是异步执行<code>foo()</code>,特别是当foo需要大量IO或网络作业时。
这个收益可以触发<code>foo()</code>执行,并将控制权转移给调用者。它让运行者将这个<code>foo()</code>任务注册为未来的obj。然后当<code>foo()</code>成功返回一个结果时,这是神奇的发生,运行程序将以yield语句执行结果的形式将结果发送回来(告诉值yield和yield语句执行结果之间的差异)。在</p>