首页 > 代码库 > tornadod的异步代码
tornadod的异步代码
#!/usr/bin/env python# -*- coding: utf-8 -*-import tornado.httpserverimport tornado.ioloopimport tornado.optionsimport tornado.webimport tornado.httpclientimport tornado.genfrom tornado.concurrent import run_on_executorfrom concurrent.futures import ThreadPoolExecutorimport timeclass SleepHandler(tornado.web.RequestHandler): executor = ThreadPoolExecutor(2) @tornado.web.asynchronous @tornado.gen.coroutine def get(self): """ 若是要实现异步并且该请求需要等待执行结果则加入yield 否则可以将yield去掉,程序会继续往下执行 """ res = yield self.sleep() self.write("when i sleep %s s bbb" % res) self.finish() @run_on_executor def sleep(self): time.sleep(6) return 6class NormalHandler(tornado.web.RequestHandler): def get(self): self.write("normal handler")if __name__ == "__main__": app = tornado.web.Application(handlers=[ (r"/sleep", SleepHandler), (r"/normal", NormalHandler), ]) http_server = tornado.httpserver.HTTPServer(app) http_server.listen(8888) tornado.ioloop.IOLoop.instance().start()
tornadod的异步代码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。