DisableThreadLibraryCalls

转载 2013年12月03日 21:31:14

1、函数原型

BOOL WINAPI DisableThreadLibraryCalls(

  __in          HMODULE hModule

);

功能:

       禁用指定的DLL的DLL_THREAD_ATTACH和DLL_THREAD_DETACH通知,这样可以减小某些程序的工作集大小。

 

参数:

         HMODULE hModule,将要被禁用DLL_THREAD_ATTACH和DLL_THREAD_DETACH通知的dll的模块句柄。

 

返回值:

        成功返回非零值;失败则返回零值。

 

注意事项:

        1)当dll使用静态C运行时库进行链接(CRT,C run-time library ).时,不要使用该函数,因为此时dll需要DLL_THREAD_ATTACH 和DLL_THREAD_DETATCH通知才能发挥正常作用。

        2)Header   Declared in Winbase.h; include Windows.h.

        3)Library     Use Kernel32.lib.

        4)DLL     Requires Kernel32.dll.



该函数在有许多DLL,频繁创建和删除线程,并且DLL不需要线程级消息如DLL_THREAD_ATTACH and DLL_THREAD_DETACH时的多线程应用中是很有效的优化。

DllMain中不当操作导致死锁问题的分析--DisableThreadLibraryCalls对DllMain中死锁的影响

(转载于breaksoftware的csdn博客) 《windows核心编程》作者在讨论DllMain执行序列化的时候,曾说过一个他的故事:他试图通过调用DisableThreadLibrary...

DllMain中不当操作导致死锁问题的分析--DisableThreadLibraryCalls对DllMain中死锁的影响

《windows核心编程》作者在讨论DllMain执行序列化的时候,曾说过一个他的故事:他试图通过调用DisableThreadLibraryCalls以使得新线程不在调用DllMain从而解决死锁问...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DisableThreadLibraryCalls
举报原因:
原因补充:

(最多只允许输入30个字)