一直想單獨寫乙個在win下的使用iocp的網路層,鑑於整體的框架沒有想好,首先把所用函式和自己的想法整理出來,以便將來使用
bool getqueuedcompletionstatus(
handle completionport,
lpdword lpnumberofbytes,
pulong_ptr lpcompletionkey,
dword dwmilliseconds);
completionport:指定的iocp,該值由createiocompletionport函式建立 (即建立的iocp控制代碼)
lpnumberofbytes:一次完成後的i/o操作所傳送資料的位元組數。 (傳遞的是整形引用)
lpcompletionkey:當檔案i/o操作完成後,用於存放與之關聯(一般情況下,我在這裡投遞乙個存放記憶體的結構體,並標示io操作)
dwmilliseconds:用於指定呼叫者等待的時間。(一般都不希望等待,所以通常為0)
bool postqueuedcompletionstatus(
handle completlonport,
dw0rd dwnumberofbytestrlansferred,
dword dwcompletlonkey,
向訊息佇列傳遞的資訊,可以根據資訊的不同設定協議,比如傳遞postqueuedcompletionstatus(hcompletionport, 0, 0, null)一般用作關閉套接字
handle createiocompletionport(
handle filehandle,
handle existingcompletionport,
ulong_ptr completionkey,
dword numberofconcurrentthreads
);在使用時需要注意的只有最後乙個引數,他表示需要建立幾個工作者執行緒。
未完待續
C cout的整理(主要是格式的整理)
c語言裡可以用printf f 來實現浮點數的格式化輸出 c cout也可以的 對於double 型別只能輸出6位 如果整數字大於6 位 就科學計數法了 所以說還是scanf printf好啊 iomanip是i o流 控制標頭檔案,就像printf的格式化輸出一樣 以下是一些常用的 dec 置基數...
std list主要函式
list是乙個雙向鍊錶,因此它的函式也都要從鍊錶的角度來進行理解。迭代器 返回迭代器,和list iterator一起使用,注意end 指向鍊錶末尾,不指向最後乙個元素 begin end 返回反向迭代器,和list reverse iterator一起使用,注意rend 指向鍊錶起始,不指向第乙個...
PHP GD庫主要函式
php中有一 像函式,可以動態生成gif格式的影象資料流並輸出到 伺服器.為了這組函式能夠工作,系統中必須有gd庫的支援.如果是在unix下,應該在編譯php之前先取得gd的原始碼並編譯之,生成libgd.a和一些.h檔案,分別拷到系統的庫目錄和頭檔案目錄中 例如 usr lib和 usr incl...