freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

同步異步設(shè)備io(留存版)

2025-09-18 14:53上一頁面

下一頁面
  

【正文】 入任何數(shù)據(jù),一般用來只想改變設(shè)備的配置(比如修改文件的時(shí)間戳)GENERIC_READ——允許對設(shè)備進(jìn)行只讀訪問GENERIC_WRITE——允許對設(shè)備進(jìn)行只寫訪問,比如備份軟件或者將數(shù)據(jù)發(fā)送到打印機(jī)GENERIC_READ | GENERIC_WRITE——允許對設(shè)備進(jìn)行讀寫操作l dwShareMode:用來指定設(shè)備共享特權(quán)(devicesharing privilege),但我們打開一個(gè)設(shè)備但是尚未調(diào)用CloseHandle()關(guān)閉時(shí),該參數(shù)可以控制其他的CreateFile()調(diào)用以何種方式打開設(shè)備。當(dāng)線程與設(shè)備發(fā)生通信時(shí),即線程發(fā)出設(shè)備I/O請求時(shí),一般來說有兩種方式:同步設(shè)備I/O請求:字如其名,線程發(fā)出設(shè)備I/O請求后,它會被臨時(shí)掛起,直到設(shè)備完成I/O請求為止,顯然這種方式嚴(yán)重?fù)p壞性能;異步設(shè)備I/O請求:線程發(fā)出設(shè)備I/O請求后,不會被臨時(shí)掛起而是繼續(xù)執(zhí)行其他任務(wù),而設(shè)備同時(shí)繼續(xù)處理I/O請求,設(shè)備處理完成后發(fā)送信號給線程,線程接著處理I/O結(jié)果。l dwCreationDisposition:用來表示用CreateFile打開文件時(shí)如果碰到存在的同名文件等情況如何處理,如CREATE_NEW——若存在同名文件,則調(diào)用失敗CREATE_ALWAYS——若存在同名文件,則覆蓋OPEN_EXISTING——若打開的文件或者設(shè)備不存咋則調(diào)用失敗OPEN_ALWAYS——若打開文件不存在則只直接創(chuàng)建一個(gè)當(dāng)調(diào)用CreateFile打開文件之外的其他設(shè)備時(shí),必須將OPEN_EXISTING傳給dwCreationDisposition參數(shù)l dwFlagsAndAttributes:允許我們設(shè)置一些標(biāo)志來微調(diào)與設(shè)備之間的通信;其次我們還可以通過一些屬性參數(shù)來設(shè)置文件屬性。執(zhí)行同步I/O時(shí)pOverlapped設(shè)為NULL,只有在異步I/O時(shí)才有意義。dwByteWritten, NULL) == FALSE) { coutWriteFile error !endl。使用異步設(shè)備I/O時(shí)我們有以下需要注意的問題:1. 設(shè)備驅(qū)動程序不必以先入先出的方式來處理隊(duì)列中的I/O請求2. 如果以同步方式執(zhí)行ReadFile/WriteFile,成功則返回非零值,失敗返回FALSE;如果以異步方式執(zhí)行,執(zhí)行成功也會返回FALSE,利用GerLastError可以查看錯誤代碼ERROR_IO_PENDING則表示異步I/O請求已被成功加入了隊(duì)列,會在晚些時(shí)候執(zhí)行。 (dwError == ERROR_IO_PENDING) ) { WaitForSingleObject(hFile, INFINITE)。... ... ...HANDLE h[2]。 = 0。ol)。 // [in] High 32bit file offset HANDLE hEvent。 } //調(diào)用SetFilePointer()函數(shù)凋整文件指針位置,移動到文件指定位置:FILE_BEGIN, FILE_CURRENT, FILE_END //第二/三個(gè)參數(shù)指定在指定文件指針處移動到位置大小 if (SetFilePointer(hFile, 0, NULL, FILE_END) == 1) { coutSetFilePointer error !endl。我們調(diào)用GetFileSizeEx可以得到文件的邏輯大小,使用GetCompressedFileSize可以得到文件壓縮后的物理大小。l pszName:既可以標(biāo)識設(shè)備的類型,也可以表示該類設(shè)備的某個(gè)實(shí)例。異步設(shè)備I/O可以避免線程掛起導(dǎo)致的CPU大量閑置,提高了利用率和吞吐量。比如常見的告訴緩存標(biāo)志:FILE_FLAG_NO_BUFFERING告訴高速緩存管理器我們不希望它對任何數(shù)據(jù)進(jìn)行緩存,我們會自己對
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1