# CmtUninstallThreadPoolCallback

int CmtUninstallThreadPoolCallback (int poolHandle, int callbackID);

## Purpose

Uninstalls a callback that you registered with CmtInstallThreadPoolCallback.

You are not required to uninstall callbacks before discarding a thread pool.

If the callback ID was returned from a CmtInstallThreadPoolCallback call that specified more than one event, the callback is uninstalled for all of the specified events.

## Parameters

Input
Name | Type | Description
poolHandle | integer | The handle you obtained from CmtNewThreadPool to identify the thread pool. Do not pass DEFAULT_THREAD_POOL_HANDLE to this function.
callbackID | integer | The callbackID that you obtained from CmtInstallThreadPoolCallback.

## Return Value

Name | Type | Description
CmtStatus | integer | The CmtStatus code that the function call returns. This function returns 0 to indicate success and negative values to indicate failure. Pass the CmtStatus code to CmtGetErrorMessage to get a description of the error code.