ReleaseSemaphoreWhenCallbackReturns function (threadpoolapiset.h)

Specifies the semaphore that the thread pool will release when the current callback completes.

Syntax

void ReleaseSemaphoreWhenCallbackReturns(
  [in, out] PTP_CALLBACK_INSTANCE pci,
  [in]      HANDLE                sem,
  [in]      DWORD                 crel
);

Parameters

[in, out] pci

A pointer to a TP_CALLBACK_INSTANCE structure that defines the callback instance. The pointer is passed to the callback function.

[in] sem

A handle to the semaphore.

[in] crel

The amount by which to increment the semaphore object's count.

Return value

None

Remarks

To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or higher.

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

See also

CallbackMayRunLong

DisassociateCurrentThreadFromCallback

FreeLibraryWhenCallbackReturns

LeaveCriticalSectionWhenCallbackReturns

ReleaseMutexWhenCallbackReturns

SetEventWhenCallbackReturns

Thread Pools

TrySubmitThreadpoolCallback