
Peter Dimov schrieb:
There are various sp_counted_base implementations in boost/detail that can be used as a starting point. But if you want help for the implementation, you need to specify an interface first. I'm not particularly fond of
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2393.html
preferring something along the lines of
http://open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2195.html
but no matter what (if any) style you choose to follow, you need to be explicit about the constraints. At the very least, the functions should contain the constraint as a suffix, i.e. atomic_add_acqrel instead of atomic_add.
Peter, I have read your paper referenced above and a few of the other papers dealing with atomic ops, but I failed to find a clear definition of what 'acquire' and 'release' semantics are supposed to mean. Could you point me into the right direction, please? Also, in your paper you're referring to [intro.concur], where could I find this? TIA, Markus