You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using a message_queue, if a process exits or crashes and then restarts, it can cause another process to enter into an infinite wait state.
waiting at: p_hdr->m_cond_send.notify_one();
The text was updated successfully, but these errors were encountered:
This is a known issue, if your platform does not support robust synchronization primitives there is no possible correct emulation. You can define BOOST_INTERPROCESS_ENABLE_TIMEOUT_WHEN_LOCKING, so that waits longer than BOOST_INTERPROCESS_TIMEOUT_WHEN_LOCKING_DURATION_MS (10.000 milliseconds by default) will return error.
Sadkly, there is no public information that's why I will left this bug open until I document it. In any case, since you are using Linux, starting from Boost 1.78, the implementation should use Robust Mutexes (see #65) , so you should not have these infinite loop problems. Which Boost version are you using?
When using a message_queue, if a process exits or crashes and then restarts, it can cause another process to enter into an infinite wait state.
waiting at:
p_hdr->m_cond_send.notify_one();
The text was updated successfully, but these errors were encountered: