剛剛在看tornado的gen模塊http://www.tornadoweb.org/documentati...classAsyncHandler(RequestHandler):@asynchronousdefget(self):http_client=AsyncHTTPClient()http_client.fetch("http://example.com",callback=self.on_fetch)defon_fetch(self,response):do_something_with_response(response)self.render("template.html")可以用gen模塊優化成classGenAsyncHandler(RequestHandler):@[email protected](self):http_client=AsyncHTTPClient()response=yieldgen.Task(http_client.fetch,"http://example.com")do_something_with_response(response)self.render("template.html")ok,現在書抄完了,開始提問我使用tornado.httpclient.HTTPClienthttp_client=httpclient.HTTPClient()try:response=http_client.fetch("http://www.google.com/")printresponse.bodyexcepthttpclient.HTTPError,e:print"Error:",e也可以實現同步的代碼風格,實際上應該也是異步執行,因為用到了IOLoop我的問題是1.tornado.httpclient.HTTPClient用在生產環境有問題嘛?2.兩種寫法達到的效果是不是一樣的,如果不一樣,有什么區別?
tornado HTTPClient 和 gen 模塊的實際區別
千萬里不及你
2019-04-06 08:31:40