node.js - nodejs的事件回调机制是否属于设计模式中的某一种?
PHPz
PHPz 2017-04-17 11:26:49
0
3
650

属于观察者模式吗?那么谁是观察者?谁是被观察者?

PHPz
PHPz

学习是最好的投资!

全部回覆(3)
阿神

這叫reactor模式
說到非同步IO,其實現在很難實現真正的異步(除非利用硬體的電位來做異步觸發),大部分情況下仍然需要阻塞在某個多路復用函數,比如select 或者epoll 上,等到描述符就緒(例如網卡緩衝區可讀寫),然後呼叫註冊在對應描述符上的回呼函數。這種方式是現在的反應器設計的基本想法。用Twisted的圖可以解釋

阿神

event-driven 是基于观察者模式

http://www.dofactory.com/javascript/observer-design-pattern

事件handler是观察者,事件來源是被观察者

觀察者模式的想法是:被观察者維護一系列观察者的列表,並在主題改變時,通知所有觀察者
這個通知機制在javascript就是以callback的方式實現,完全符合觀察者模式的設計理念

黄舟

應該是proactor吧?

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板