$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: David Bien (davidbien_at_[hidden])
Date: 2024-04-26 16:51:11
Not really sure where to bring this issue up.
I have a singleton globals object with a session manager, share manager, etc. that is destroyed atexit() on final reference release.
There are a few mutexes in the implementation. This functions fine on Windows, MacOS, etc - the globals object is released during atexit() and shutdown proceeds normally.
Under Linux when BOOST_THREAD_HAS_EINTR_BUG is defined we SIGABRT at this:
~mutex()
{
BOOST_VERIFY(!posix::pthread_mutex_destroy(&m));
}
The verify fails and we abort().
When I define BOOST_THREAD_HAS_NO_EINTR_BUG we do not abort - which means that posix::pthread_mutex_destroy() returns 0 in the case where BOOST_THREAD_HAS_NO_EINTR_BUG is defined and returns non-zero in the case of it not being defined.
Guidance? Also point me at a better place for this discussion if there is such a place.
Thanks,
David Bien