CloseThreadpoolIo function (threadpoolapiset.h)

Releases the specified I/O completion object.

Syntax

void CloseThreadpoolIo(
  [in, out] PTP_IO pio
);

Parameters

[in, out] pio

A pointer to a TP_IO structure that defines the I/O completion object. The CreateThreadpoolIo function returns this pointer.

Return value

None

Remarks

The I/O completion object is freed immediately if there are no outstanding callbacks; otherwise, the I/O completion object is freed asynchronously after the outstanding callbacks complete.

You should close the associated file handle and wait for all outstanding overlapped I/O operations to complete before calling this function. You must not cause any more overlapped I/O operations to occur after calling this function.

It may be necessary to cancel threadpool I/O notifications to prevent memory leaks. For more information, see CancelThreadpoolIo.

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

CancelThreadpoolIo

CreateThreadpoolIo

StartThreadpoolIo

Thread Pools

WaitForThreadpoolIoCallbacks