[cpp-threads] Alternatives to SC
Peter Dimov
pdimov at mmltd.net
Fri Jan 12 15:43:11 GMT 2007
Doug Lea wrote:
> Thanks for questions! Here are some pointwise clarifications:
>
> Paul E. McKenney wrote:
>>
>>> * Local acyclicity: Each thread sees an acyclic order of events
>>> that is consistent with program order.
>>
>> This property holds only for specially marked variables, right?
>
> Yes. For now, this considers only atomic variables that are
> accessed solely using via load<ordered> and store<ordered> (wrt
> the current atomics API).
Actually... I'm not sure whether anyone knows with certainty what <ordered>
is supposed to mean, but last time I asked, we seemed to arrive at it being
both an acquire and a release. Under this definition, load<ordered> and
store<ordered> don't make sense, because acquire is only applicable to an
operation that reads a value, and release only to operations that write a
value. But it's possible that I'm misunderstanding something again, won't be
a first.
Interestingly, N2145 allows store<ordered>, but not load<ordered>.
More information about the cpp-threads
mailing list