最近想在 handler 中些自己的异步程序,原本以为只要通过 coroutine 装饰以后返回个 future 对象就可以让程序实现异步,但尴尬的是测试后发现然!并!卵!
所以兴致勃勃的去看了 tornado 源码,在看到 ioloop 将 socket 注册事件以及回调函数后就懵逼了,因为,虽然这样是注册了,但是之后代码里面似乎并没体现出 tornado 如何在注册的事件发生之后怎么回调回调函数。后来想了下, ioloop 的的底层是 Linux 的 epoll ,这样一来, tornado 是不是把调用回调函数的任务交给了操作系统?而我们只用关心向操作系统指明回调函数以及调用回调函数的事件就行了????
以上是我的理解,如果不对请大神指出~~~~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.