阿神2017-04-17 11:28:49
这叫reactor模式
说到异步IO,其实现在很难实现真正的异步(除非利用硬件的电位来做异步触发),大部分情况下仍然需要阻塞在某个多路复用函数,比如select 或者 epoll 上,等到描述符就绪(比如网卡缓冲区可读写),然后调用注册在相应描述符上的回调函数。这种方式是现在的反应堆设计的基本思路。用Twisted的图可以解释
阿神2017-04-17 11:28:49
event-driven 是基于观察者模式
的
http://www.dofactory.com/javascript/observer-design-pattern
事件handler是观察者
,事件源是被观察者
观察者模式的思想是:被观察者
维护一系列观察者
的列表,并在主题改变时,通知
所有观察者
这个通知机制在javascript就是以callback
的方式实现,完全符合观察者模式的设计理念