CreateThreadpoolIo 函式 (threadpoolapiset.h)
建立新的 I/O 完成物件。
語法
PTP_IO CreateThreadpoolIo(
[in] HANDLE fl,
[in] PTP_WIN32_IO_CALLBACK pfnio,
[in, out, optional] PVOID pv,
[in, optional] PTP_CALLBACK_ENVIRON pcbe
);
參數
[in] fl
要系結至這個 I/O 完成物件的檔句柄。
[in] pfnio
每次檔案上重疊的 I/O 作業完成時,要呼叫的回呼函式。 如需詳細資訊,請參閱 IoCompletionCallback。
[in, out, optional] pv
要傳遞至回調函式的選擇性應用程式定義數據。
[in, optional] pcbe
定義要在其中執行回呼之環境 之TP_CALLBACK_ENVIRON 結構的指標。 在呼叫此函式之前,請使用 InitializeThreadpoolEnvironment 函式來初始化 結構。
如果此參數為 NULL,則回呼會在預設回呼環境中執行。 如需詳細資訊,請參閱 InitializeThreadpoolEnvironment。
傳回值
如果函式成功,它會傳回定義 I/O 物件的 TP_IO 結構的指標。 應用程式不會修改這個結構的成員。
如果函式失敗,則會傳回NULL。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError。
備註
若要開始接收重疊的 I/O 完成回呼,請呼叫 StartThreadpoolIo 函 式。
如果系結至 I/O 完成物件的檔句柄具有通知模式FILE_SKIP_COMPLETION_PORT_ON_SUCCESS,且異步 I/O 作業會立即傳回成功,則不會呼叫 I/O 完成回呼函式,而且必須取消線程緩衝處理 I/O 通知。 如需詳細資訊,請參閱 CancelThreadpoolIo。
若要編譯使用此函式的應用程式,請將_WIN32_WINNT定義為0x0600或更高版本。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | threadpoolapiset.h (Windows 7、Windows Server 2008 Windows Server 2008 R2) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |