未在受管线程的混合模式DLL中获取DLL_THREAD_DETACH

时间:2017-05-01 19:56:26

标签: c# c++-cli

我有一个使用线程本地存储的C ++ / CLI dll。它有一个DllMain()所以我可以在线程退出时释放TLS。

我在使用System.Threading.Thread创建线程的C#程序中使用此dll。 DllMain()获得DLL_THREAD_ATTACH次来电,但绝不会DLL_THREAD_DETACH。如果我使用std::thread在dll中创建线程,那么我会按预期获得分离调用。

为什么会出现这种情况的任何想法,和/或对TLS清理方法的任何建议?

0 个答案:

没有答案