
El 08/01/2013 14:38, Tim Blechmann escribió:
For the spinlocks, the way forward is to use std::atomic_flag, and much of the other stuff is also obsoleted by the C++11 atomics. Unfortunately, I was unable to get yield(k) into the standard. [CCing Tim duet to Boost.Atomic/Lockfree mention]
We need to be compatible with C++03 compilers so I guess maybe Boost.Atomic/Boost.Lockfree might be a good candidates for these utilities.
i think it is a good idea to use boost/std atomics. smart_ptr has support for much more architectures, though ... it would be best to integrate all that architectures into boost.atomic ...
Is there any plan to improve Boost.Atomic portability? I guess we have enough atomic experts in Boost but maybe we'll need to make some "call for experts" to support more architectures. I read from Boost.Atomic documentation that supported platforms are: - gcc 4.x: i386, x86_64, ppc32, ppc64, armv5, armv6, alpha - Visual Studio Express 2008/Windows XP, i386 That seems a bit limited unless under "GCC" we have several compilers compatible with GCC and MSVC (maybe Intel, Clang, Freescale? etc.). Maybe some Summer of code projects could help here. Ion