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-09 18:02:18
#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@â¦):
OK, but my point is that you can't rely on DllMain. I don't think this is
a problem boost can solve for you. I suggest the DllMain documentation. A
simple search will also show all the problems you can get into with
DllMain
I guess this can explain your problem (from the DllMain
documentation):[[BR]]
''Because DLL notifications are serialized, entry-point functions should
not attempt to communicate with other threads or processes. Deadlocks may
occur as a result.''
I your case a global object is maybe the best option, but this can also
cause problems if your code depends on other global objects. You can also
have a look at #pragma init_seq
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9083#comment:9> 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