Proactor设计模式
生活随笔
收集整理的這篇文章主要介紹了
Proactor设计模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
主動器Proactor
Proactor模式結構
Proactor主動器模式包含如下角色
Handle 句柄;用來標識socket連接或是打開文件;
Asynchronous Operation Processor:異步操作處理器;負責執行異步操作,一般由操作系統內核實現;
Asynchronous Operation:異步操作
Completion Event Queue:完成事件隊列;異步操作完成的結果放到隊列中等待后續使用
Proactor:主動器;為應用程序進程提供事件循環;從完成事件隊列中取出異步操作的結果,分發調用相應的后續處理邏輯;
Completion Handler:完成事件接口;一般是由回調函數組成的接口;
Concrete Completion Handler:完成事件處理邏輯;實現接口定義特定的應用處理邏輯;
業務流程及時序圖
應用程序啟動,調用異步操作處理器提供的異步操作接口函數,調用之后應用程序和異步操作處理就獨立運行;應用程序可以調用新的異步操作,而其它操作可以并發進行;
應用程序啟動Proactor主動器,進行無限的事件循環,等待完成事件到來;
異步操作處理器執行異步操作,完成后將結果放入到完成事件隊列;
主動器從完成事件隊列中取出結果,分發到相應的完成事件回調函數處理邏輯中;
?
總結
以上是生活随笔為你收集整理的Proactor设计模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: redis:list的底层实现--压缩列
- 下一篇: 网络:301和302