PostQueuedCompletionStatus 函数

将 I/O 完成数据包发布到 I/O 完成端口。

语法

BOOL WINAPI PostQueuedCompletionStatus(
  _In_     HANDLE       CompletionPort,
  _In_     DWORD        dwNumberOfBytesTransferred,
  _In_     ULONG_PTR    dwCompletionKey,
  _In_opt_ LPOVERLAPPED lpOverlapped
);

参数

CompletionPort [in]

I/O 完成数据包要发布到的 I/O 完成端口的句柄。

dwNumberOfBytesTransferred [in]

要通过 GetQueuedCompletionStatus 函数的 lpNumberOfBytesTransferred 参数返回的值。

dwCompletionKey [in]

要通过 GetQueuedCompletionStatus 函数的 lpCompletionKey 参数返回的值。

lpOverlapped [in, optional]

要通过 GetQueuedCompletionStatus 函数的 lpOverlapped 参数返回的值。

返回值

如果该函数成功,则返回值为非零值。

如果函数失败,则返回值为零。 若要获取扩展的错误信息,请调用 GetLastError

备注

I/O 完成数据包将满足 对 GetQueuedCompletionStatus 函数的未完成调用。 此函数返回 ,其中三个值作为 PostQueuedCompletionStatus 调用的第二个、第三个和第四个参数传递。 系统不使用或验证这些值。 具体而言, lpOverlapped 参数不需要指向 OVERLAPPED 结构。

在 Windows 8 和 Windows Server 2012 中,以下技术支持此函数。

技术 支持
(SMB) 3.0 协议的服务器消息块

SMB 3.0 透明故障转移 (TFO)

具有横向扩展文件共享的 SMB 3.0 (SO)

群集共享卷文件系统 (CsvFS)

弹性文件系统 (ReFS)

CsvF 将为压缩文件执行重定向的 IO。

要求

要求
最低受支持的客户端
Windows XP [桌面应用 |UWP 应用]
最低受支持的服务器
Windows Server 2003 [桌面应用 |UWP 应用]
标头
IoAPI.h (包括 Windows.h) ;
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP (上的 WinBase.h 包括 Windows.h)

Kernel32.lib
DLL
Kernel32.dll

另请参阅

CreateIoCompletionPort

文件管理功能

GetQueuedCompletionStatus

重叠