[Windows programming] DLL development must read best practices for creating DLLs

Source: Internet
Author: User

When developing a DLL, pay attention to the dllmain function, becauseCodeEasy to causeThread deadlock. This msdnArticleBest practices for creating DLLs discusses in depth what issues should be paid attention to during DLL development.

 

Simply put, the system will automatically generate a loader lock when loading the DLL to prevent multiple DLL files from being loaded at the same time. Loaderlock is automatically locked from the start of calling the API function loadlibrary until dllmain exits. Some developers prefer to write a lot of initialization code in dllmain (for exampleCoinitializeex,LoadLibraryEx,Createproces, creation thread, synchronization thread, Etc ..). The initialization code can easily generate other locks, which leads to deadlocks.

 

Loader lock:

An example of a deadlock:

 

 

 

> The copyright of the original article belongs to the author. for reprinting, please indicate the source (Http://blog.csdn.net/WinGeek/), Thank you. <

 

 

 

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.