
Phil Endecott wrote:
Ion Gazta?aga wrote:
Since there is no atomic operations library in Boost I use my own atomic operations (taken from apache):
http://svn.boost.org/svn/boost/trunk/boost/interprocess/detail/atomic.hpp
It would be great to make this a publicly-visible library, rather than an implementation detail of interprocess. That would avoid duplication of effort in e.g. shared_ptr.
Note that recent-ish versions of gcc have builtins for atomic operations on many platforms.
I absolutely agree. Interprocess will suffer big portability problems with this approach, but the only atomic functions I've seen officially in Boost are those implemented in shared_ptr. Ideally, we should have some basic atomic library/internal header (even if all atomic functions issues a full barrier on each operation) ASAP. I really don't want to maintain something that I don't understand ;-)
Phil.
Regards, Ion