来源于stackoverflow的问题()
另外注意add_timeout的参数deadline,是以当前时间为开始时间.REQ:tornado equivalent of delay
RESP:
gen风格import timefrom tornado.ioloop import IOLoopfrom tornado.web import RequestHandlerfrom tornado import genclass MyHandler(RequestHandler): @asynchronous @gen.engine def get(self): self.write("sleeping .... ") self.flush() # Do nothing for 5 sec yield gen.Task(IOLoop.instance().add_timeout, time.time() + 5) self.write("I'm awake!") self.finish()callback风格
class MyHandler(RequestHandler): @asynchronous def get(self): self.write("sleeping .... ") self.flush() IOLoop.instance().add_timeout(time.time() + 5, self._process) def _process(self) # Do nothing for 5 secs self.write("I'm awake!") self.finish()