Pausing with Tornado
Throwing this in my blog so I don't forget again. The way to sleep for a certain period of time using tornado.gen is:
import tornado.web
from tornado.ioloop import IOLoop
from tornado import gen
class MyHandler(tornado.web.RequestHandler):
@tornado.web.asynchronous
@gen.engine
def get(self):
self.write("sleeping .... ")
# Do nothing for 5 sec
loop = IOLoop.instance()
yield gen.Task(loop.add_timeout, time.time() + 5)
self.write("I'm awake!")
self.finish()
Simple once you see it, but for some reason this has been the hardest for me to get used to.