我知道 tornado 有 AsyncHttpClient,用它 + callback 肯定没错。
但是有的时候我用的可能是 SDK,比如 SDK 访问一个 API,一次 http 请求对面要 2 秒才能响应。
那么如果是 gevent,我理解他有猴子补丁,可以在我网络阻塞的时候,切到别的任务上工作,等到网络连接结束的时候,再切回来。
我的问题是:
tornado 是不是 不能在我使用基于 Http 的 SDK,或者 Requests 库的时候,自动识别我网络请求阻塞了,然后处理别的任务?
如果在 tornado 下不使用 AsyncHttpClient,达到我的目的呢?
搜了一圈谷歌,全是给我讲 io 多路复用和信号驱动,很少有提到这块相关的
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.