擅长:python、mysql、java
<p>问题是,时间。睡觉不是异步的,所以主循环在休眠时被阻塞。对于异步运行同步代码,可以使用单独的工作线程。在</p>
<pre><code>class HugeQueryHandler(BaseHandler):
executor = tornado.concurrent.futures.ThreadPoolExecutor(5)
@tornado.concurrent.run_on_executor
def sleep_async(self):
time.sleep(20)
return
@tornado.web.asynchronous
@gen.engine
def get(self):
r = yield self.sleep_async()
self.finish()
</code></pre>