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 函数调用它。 从 ntdll.dll 导出 API。

要求

要求
DLL ntdll.dll