NtRemoveIoCompletion 函式

從 I/O 完成物件中移除專案。 如果目前沒有可用的專案,則呼叫執行緒會等候專案。

語法

NTSTATUS NtRemoveIoCompletion (
    __in HANDLE IoCompletionHandle,
    __out PVOID *KeyContext,
    __out PVOID *ApcContext,
    __out PIO_STATUS_BLOCK IoStatusBlock,
    __in_opt PLARGE_INTEGER Timeout
    )

參數

IoCompletionHandle [in]

I/O 完成物件的控制碼。

KeyCoNtext [out]

變數的指標,該變數會接收 I/O 完成物件與檔案物件相關聯時所指定的索引鍵內容。

ApcCoNtext [out]

接收發出 I/O 作業時所指定內容的變數指標。

IoStatusBlock [out]

接收 I/O 完成狀態之變數的指標。

逾時 [in, 選擇性]

選擇性逾時值的指標。

傳回值

NTSTATUS 程式碼。 如需詳細資訊,請參閱 使用 NTSTATUS 值

備註

IO_STATUS_BLOCK具有下列定義。

typedef struct _IO_STATUS_BLOCK {  
    union {  
        NTSTATUS Status;  
        PVOID Pointer;  
    } DUMMYUNIONNAME;  
  
    ULONG_PTR Information;  
} IO_STATUS_BLOCK, *PIO_STATUS_BLOCK;  

此函式沒有相關聯的匯入程式庫或標頭檔;您必須使用 LoadLibraryGetProcAddress 函式來呼叫它。 API 會從 ntdll.dll 匯出。

規格需求

需求
DLL ntdll.dll