我阅读了Tornado文档,我对gen.coroutine及其工作方式感到困惑。文档在这里:http://www.tornadoweb.org/en/stable/gen.html#module-tornado.gen 我无法理解的是这段代码是如何工作的:
class GenAsyncHandler(RequestHandler):
@gen.coroutine
def get(self):
http_client = AsyncHTTPClient()
response = yield http_client.fetch("http://example.com")
do_something_with_response(response)
self.render("template.html")
Tornado如何使用函数do_something_with_response()在yield使用yield结果后使方法get()继续?我试图在tornado.gen模块中读取函数_make_coroutine_wrapper()的源代码,但仍然无法理解这一点。有人能用简单的语言解释一下吗?