CloseThreadpoolWait function (threadpoolapiset.h)
Releases the specified wait object.
Syntax
void CloseThreadpoolWait(
[in, out] PTP_WAIT pwa
);
Parameters
[in, out] pwa
A pointer to a TP_WAIT structure that defines the wait object. The CreateThreadpoolWait function returns this pointer.
Return value
None
Remarks
The wait object is freed immediately if there are no outstanding callbacks; otherwise, the timer object is freed asynchronously after the outstanding callbacks complete.
In some cases, callback functions might run after CloseThreadpoolWait has been called. To prevent this behavior:
- Call the SetThreadpoolWait function or SetThreadpoolWaitEx function with the h parameter set to NULL.
- Call the WaitForThreadpoolWaitCallbacks function with the fCancelPendingCallbacks parameter set to TRUE.
- Call CloseThreadpoolWait.
If there is a cleanup group associated with the wait object, it is not necessary to call this function; calling the CloseThreadpoolCleanupGroupMembers function releases the work, wait, and timer objects associated with the cleanup group.
To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or higher.
Examples
For an example, see Using the Thread Pool Functions.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista [desktop apps | UWP apps] |
Minimum supported server | Windows Server 2008 [desktop apps | UWP apps] |
Target Platform | Windows |
Header | threadpoolapiset.h (include Windows.h on Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
DLL | Kernel32.dll |