From: Andrey Semashev (andysem_at_[hidden])
Date: 2007-11-14 13:29:24
Beman Dawes wrote:
> Anthony Williams wrote:
>> "Phil Endecott" <spam_from_boost_dev_at_[hidden]> writes:
>>> Anthony Williams wrote:
>>>> One principle behind the new lock templates is that it should be easy
>>>> to incorporate new mutex and lock types, and they will still work with the
>>>> existing facilities (e.g. condition_variable_any).
>>> Hi Anthony,
>>> Can you clarify what you mean by that please? Are you saying that if I
>>> have a new mutex (e.g. my futex implementation) I should be able to use
>>> it with the existing condition_variable_any? (Is that what the "_any"
>>> means?) If that's true I'm impressed; I thought that it was necessary
>>> to have some sort of atomic unlock-A-and-lock-B method to do that.
>> Yes, that's what I meant, and that's what the _any means (as opposed to
>> condition_variable which only works with unique_lock<mutex> (also known as
> I'm not totally enthralled by the condition_variable_any name. If
> someone has a suggestion for a more meaningful name, now is a good time
> to speak up.
I wonder why not making condition_variable a template with a mutex type
in its template parameter. We could specialize it on the boost::mutex
type to have the current optimized condition_variable implementation and
leave it implemented as condition_variable_any for a general case.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk