Boost logo

Boost :

From: Howard Hinnant (hinnant_at_[hidden])
Date: 2004-07-13 18:48:57


On Jul 13, 2004, at 3:59 PM, Peter Dimov wrote:

> Hm. Where were we.

What?! I thought you were holding the map! <quickly looks for road
signs>. OMG we're lost!

> Oh yes.

<phew!> :-)

> - mutex::timed_lock: optional.

<nod>

> - timed_mutex: in the std or not?

well, in boost anyway with the intent of proposing for std, I vote yes.

> - recursive_mutex: in the std? Seems so.

<nod>

> - condition::wait with recursive_mutex: compiles?

<nod>, but I could be persuaded otherwise if we can detect a recursive
mutex at compile time.

> - condition::wait with recursive_mutex locked more than once: defined?
> if
> so, how?

This is the big question in my mind right now. I know how to make it
work with a home-grown recursive mutex. But I don't know how to make
it work with a native recursive mutex, combined with a native
condition. I'm somewhat surprised that it doesn't just work.
Alexander, can we send a bug report to the pthreads guys? Or would we
just be laughed out of the room? I'm not educated enough to know what
the problems are to making it work. And clearly it doesn't work today,
so it's a problem whether or not it can be fixed. <sigh> That
probably backs us into undefined behavior if the mutex is recursively
locked, or refusing to compile at all with a recursive mutex. I'm
unsure at this point which would be the better option.

-Howard


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