擅长:python、mysql、java
<p>所有用户都需要以某种方式返回它的值。在Python2.6或2.7中,生成器不允许使用“return”语句,因此协程有一个特殊的“return”异常:</p>
<pre><code>@gen.coroutine
def get_all_users(self):
users = yield User.objects.find_all()
raise gen.Return(users)
</code></pre>
<p>在Python3.3及更高版本中,您可以简单地“返回用户”。在</p>
<p>现在在“get”中,调用“get-unu-all-yu-users”只会给你一个悬而未决的未来,而不是一个价值。您必须等待未来通过产生该值来解析它:</p>
^{pr2}$
<p>有关从协同例程调用协同例程的更多信息,请参阅my<a href="http://emptysqua.re/blog/refactoring-tornado-coroutines/" rel="nofollow">"Refactoring Tornado Coroutines"</a>。在</p>
<p>顺便说一下,你可以用通用协同程序,它比“异步”更现代发电机发动机“,但这两种风格都有效。在</p>