Re: [Boost-bugs] [Boost C++ Libraries] #9083: thread_group::join_all() hangs when invoked on dll unload

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9083: thread_group::join_all() hangs when invoked on dll unload
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-09-07 16:35:38


#9083: thread_group::join_all() hangs when invoked on dll unload
-------------------------+-------------------------------------------------
  Reporter: | Owner: viboes
  danobrega@… | Status: assigned
      Type: Bugs | Component: thread
 Milestone: To Be | Severity: Problem
  Determined | Keywords: thread_group join_all hang deadlock
   Version: Boost | freelibrary windows
  1.54.0 |
Resolution: |
-------------------------+-------------------------------------------------

Comment (by hvemha@…):

 I strongly advice against putting this kind of code into DllMain. You have
 no control over the order dll's are loaded and unloaded. E.g.
 `boost_thread-vc110-mt-gd-1_54.dll` might be unloaded before you receive
 `DLL_PROCESS_DETACH` in `BoostStudyDll.dll`

 The correct thing is to move the `DLL_PROCESS_ATTACH` code into your
 LoadBoostStudyDll function and the `DLL_PROCESS_DETACH` code into your
 FreeBoostStudyDll function.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9083#comment:7>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC