DisassociateCurrentThreadFromCallback 函数 (threadpoolapiset.h)
删除当前正在执行的回调函数与启动回调的对象之间的关联。 当前线程将不再被视为代表对象执行回调。
语法
void DisassociateCurrentThreadFromCallback(
[in, out] PTP_CALLBACK_INSTANCE pci
);
参数
[in, out] pci
指向定义回调实例 的 TP_CALLBACK_INSTANCE 结构的指针。 指针传递到回调函数。
返回值
无
备注
如果这是代表对象执行回调的最后一个线程,则将释放等待对象回调完成的任何线程。
线程与对象的 清理组 保持关联,直到线程返回到线程池。 这使 DLL 关闭例程可以安全地与未完成的回调同步,并在所有回调完成后继续卸载 DLL 的代码。
回调生成对象在回调期间保持有效。 回调对象可以重复使用或释放 (,尽管) 仍需要与清理组版本同步。
若要编译使用此函数的应用程序,请将_WIN32_WINNT定义为 0x0600 或更高版本。
要求
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | threadpoolapiset.h (包括 Windows 7 上的 Windows.h、Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
DLL | Kernel32.dll |
另请参阅
FreeLibraryWhenCallbackReturns
LeaveCriticalSectionWhenCallbackReturns
ReleaseMutexWhenCallbackReturns