Re: [Boost-bugs] [Boost C++ Libraries] #7720: exception lock_error while intensive locking/unlocking of mutex

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7720: exception lock_error while intensive locking/unlocking of mutex
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-11-05 06:44:36


#7720: exception lock_error while intensive locking/unlocking of mutex
--------------------------------+------------------------
  Reporter: sergey.stepanov@… | Owner: viboes
      Type: Bugs | Status: closed
 Milestone: Boost 1.54.0 | Component: thread
   Version: Boost 1.51.0 | Severity: Regression
Resolution: fixed | Keywords: lock_error
--------------------------------+------------------------

Comment (by viboes):

 Sorry for not updating the ticket. This has been fixed as


 {{{
         void release_shared_waiters(state_data old_state)
         {
             if(old_state.shared_waiting || old_state.exclusive_waiting)
             {
 BOOST_VERIFY(detail::win32::ReleaseSemaphore(semaphores[unlock_sem],old_state.shared_waiting
 + (old_state.exclusive_waiting?1:0),0)!=0);
             }
         }

 ...
                     if(last_reader)
                     {
                         release_waiters(old_state);
                     }
                     else
                     {
                         release_shared_waiters(old_state);
                     }
 }}}

 Please, could you try it?

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/7720#comment:21>
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:17 UTC