Boost logo

Boost :

Subject: [boost] basic_timed_mutex.hpp Assertion failed. Bug not fixed in Boost 1.38?
From: Filip Klasson (filkl784_at_[hidden])
Date: 2009-03-24 10:26:48


Hi,

I get Assertion failed
timed_lock(::boost::detail::get_system_time_sentinel()), file
c:\boost\thread\win32\basic_timed_mutex.hpp, line 64.

Code in basic_timed_mutex.hpp:
void lock()
{

BOOST_VERIFY(timed_lock(::boost::detail::get_system_time_sentinel()));
//Line 64
}

I read in a previous thread that this was a known bug that is fixed in Boost
1.38 but i am using Boost 1.38. Is this another bug or is it not fixed? This
only happends sometimes and it happends when i call wait on a condition
variable.
Here is my code, i have marked where Assertion failed happends.

boost::mutex::scoped_lock lock(_mutex);
while(_queue.empty()) {
_condition.wait(lock);
} //Assertion failed happends here.
//Another thread is signaling the condition variable when an element is
added to the _queue.

I am happy with all sorts of helpful comments.

Best regards


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk