CreateThreadpoolWait 函式 (threadpoolapiset.h)

建立新的 wait 物件。

語法

PTP_WAIT CreateThreadpoolWait(
  [in]                PTP_WAIT_CALLBACK    pfnwa,
  [in, out, optional] PVOID                pv,
  [in, optional]      PTP_CALLBACK_ENVIRON pcbe
);

參數

[in] pfnwa

等候完成或逾時時所要呼叫的回呼函式。如需詳細資訊,請參閱 WaitCallback

[in, out, optional] pv

要傳遞至回呼函式的選擇性應用程式定義資料。

[in, optional] pcbe

定義要在其中執行回呼之環境的 TP_CALLBACK_ENVIRON 結構。 InitializeThreadpoolEnvironment函式會傳回這個結構。

如果此參數為 Null,則回呼會在預設回呼環境中執行。 如需詳細資訊,請參閱 InitializeThreadpoolEnvironment

傳回值

如果函式成功,它會傳回定義 wait 物件的 TP_WAIT 結構的指標。 應用程式不會修改這個結構的成員。

如果函式失敗,則會傳回 Null。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError

備註

若要設定等候物件,請呼叫 SetThreadpoolWaitSetThreadpoolWaitEx 函 式。

工作專案及其所呼叫的所有函式在傳回之後,不得依賴執行緒。 因此,您無法從預設回呼環境呼叫需要永續性執行緒的非同步呼叫,例如 RegNotifyChangeKeyValue 函式,而不需要 REG_NOTIFY_THREAD_AGNOSTIC 旗標。 請改用您控制其存留期的執行緒。

若要編譯使用此函式的應用程式,請將_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

另請參閱

CloseThreadpoolWait

SetThreadpoolWait

執行緒集區

WaitForThreadpoolWaitCallbacks