Subject: Re: [boost] [locale] review part 2.2: source
From: Ilya Sokolov (ilyasokol_at_[hidden])
Date: 2011-04-19 00:07:24
On Mon, 18 Apr 2011 18:42:22 +0600, Peter Dimov <pdimov_at_[hidden]> wrote:
> Artyom wrote:
>> Mutex acquisition and release is full memory barrier.
> No, they are only guaranteed to have acquire and release
> semantics, respectively.
IIRC, acquire and full due to existence of try_lock.
> Double-checked locking is broken even if they're full barriers though.
> That said, MSVC from some version onwards, I forget which,
From 8.0 (2005).
> guarantees that volatile reads have acquire semantics and that volatile
> writes have release semantics, and under this assumption, the code is
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk