Col*_*ean 22
@tornado.web.asynchronous 防止RequestHandler自动调用self.finish().而已; 它只是意味着Tornado将保持连接打开,直到您手动调用self.finish().
不使用此装饰器的代码可以阻止或不阻止.使用装饰器不会以任何方式改变它.
正如@Steve Peak所说,您使用装饰器进行异步请求,例如数据库检索.
针对Tornado 3.1+进行了更新:如果您使用@gen.coroutine,则无需使用@asynchronous.我相信旧的@gen.engine界面仍然需要@asynchronous.
这里回答:异步与非阻塞
想想这样.当您需要请求说出数据库或其他URL来检索数据时,您不希望阻止龙卷风IO.因此,@tornado.web.asynchronous允许IO在等待加载内容时处理其他请求(例如数据库或URL).
它们是相似的.你最有可能会使用@tornado.web.asynchronous.
| 归档时间: |
|
| 查看次数: |
7518 次 |
| 最近记录: |