這是在學《windows網路程式設計(第二版)》第六章時製作的乙個例子
由於書中沒有給出簡潔的例子,本人在學這裡時就費了很多時間。
下面包括了主程式部分,工作執行緒在(2)中貼出,由於**太長。
本程式在vs2003編譯器編譯執行。在6.0下可能需要稍加修改。
#include #include #include #include //微軟擴充套件的類庫
using namespace std;
#define send 0
#define recv 1
#define accept 2
#define data_length 1000
//單句柄資料定義
typedef struct _per_handle_data
per_handle_data,*lpper_handle_data;
//但io運算元據
typedef structper_io_data,*lpper_io_data;
void main()
AcceptEx與完成埠(IOCP)結合例項
前言在windows平台下實現高效能網路伺服器,iocp 完成埠 是唯一選擇。編寫網路伺服器面臨的問題有 1 快速接收客戶端的連線。2 快速收發資料。3 快速處理資料。本文主要解決第乙個問題。acceptex函式定義 bool acceptex socket slistensocket,socket...
完成埠模型
最近要做乙個網路方面的小東東,基於c s模式的。都說iocp可以使系統達到最佳的效能,因此我就比劃了兩下,獻醜了。抄書開始。從本質上說,完成埠模型要求建立乙個windows完成埠物件,該物件通過指定數量的執行緒,對重疊i o請求進行管理,以便為已經完成的重疊i o請求提供服務。首先要建立乙個i o完...
完成埠iocp和重疊埠
windows下的iocp和 linux下的epoll epoll我還沒有研究過 都是屬於socket 網路程式設計的範疇.不過其特色是 用固定很少的執行緒去管理成千上萬個socket連線.其相當於 非同步通訊 普通socket是同步,同步 可能要乙個執行緒乙個socket鏈結 去做,由於系統可以執...