IOCP 主要函式 整理

2021-05-22 22:44:02 字數 973 閱讀 9100

一直想單獨寫乙個在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...