重疊作業

重疊的作業可讓線程在背景執行耗時的 I/O 作業,讓線程自由執行其他工作。 若要在通訊資源上啟用重疊的 I/O 作業,線程必須在開啟句柄時,在 CreateFile 函式中指定 FILE_FLAG_OVERLAPPED 旗標。 若要將 ReadFileWriteFile 函式當做重疊作業來執行ReadFile,呼叫線程必須指定重疊 重疊 結構的指標。 重疊 結構必須包含手動重設(而非自動重設)事件物件的句柄。 當呼叫 I/O 函式完成作業之前傳回時,系統會將事件物件的狀態設定為未發出訊號。 當作業完成時,系統會將事件對象的狀態設定為發出訊號。 線程會使用 wait 函式來檢查事件物件的目前狀態,或等候其狀態收到訊號。

ReadFileExWriteFileEx 函式只能當做重疊的作業執行。 呼叫線程會指定 FileIOCompletionRoutine 函式的指標,此函式會在重疊的作業完成時執行。 只有在呼叫線程執行可警示的作業時,才會執行完成例程。

如需有關事件物件、等候函式、可警示等候和完成例程的詳細資訊,請參閱關於同步處理