資源簡介
開發環境: VS2010
開發語言: C++
Winsock I/O模型: IOCP (完成端口模型)
代碼示例包括Client和Server, common下包括Functor和Thread兩個模塊。Functor封裝了函數對象,用于各種Callback;Thread封裝了線程函數對象,用于將類的成員函數綁定到一個線程來執行。
server路徑下IServer定義了服務端的接口,CompletionPort實現了IServer,并利用觀察者模式和上層解耦。Server的實現分解為IoData, SocketContext, Disposer, Initializer, Parser, Poster, Creator幾個主要的模塊,并通過CompletionPort包裝為統一的接口。其中對于連接的監聽采用了AcceptEx函數來實現異步的Accept,該過程定義在WatchProc所對應的線程函數中。IOCPTest定義了服務端的測試接口,可以通過控制命令來實現對Server的Start, Stop, Suspend, Resume操作。
client下IClient定義了客戶端的接口,SocketClient實現了IClient,通過ConnectProc以及SendPacketProc兩個過程分別控制連接的建立和數據包的發送,并通過隊列來管理連接到Server的socket。ClientTest定義了Client端的測試接口,可以自行定義配置信息。
Server運行的過程中會記錄日志文件,方便查看服務器的運行狀態。

代碼片段和文件信息
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????37525??2018-10-26?18:44??IOCP_20130726_V1.7z
-----------?---------??----------?-----??----
?????文件???????37525??2018-10-26?18:44??IOCP_20130726_V1.7z
- 上一篇:C++MFC物資管理系統源碼.zip
- 下一篇:CBC模式的DES加密解密程序
評論
共有 條評論