Since nobody provided a solution to this post plus the fact that I desperately need a workaround, here is my situation and some abstract solutions/ideas for debate.
Now, https://github.com/mher/tornado-celery comes to rescue...
class GenAsyncHandler(web.RequestHandler): @asynchronous @gen.coroutine def get(self): response = yield gen.Task(tasks.sleep.apply_async, args=[3]) self.write(str(response.result)) self.finish()