
Le 13/01/13 19:15, Andrey Semashev a écrit :
On Sun, Jan 13, 2013 at 10:04 PM, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
The patch also adds some heuristic code for detecting an atomic-compatible integer type to even better avoid using the spinlock pool of Boost.Atomic. Great. Does it mean that Boost.Thread must link with Boost.Atomic when when the spinlock pool is needed? Yes, Boost.Thread has to link with Boost.Atomic if the spinlock pool is used. You can always link and hope the linker eliminates the dependency when not needed.
Is there a know platform/compiler for which the condition
BOOST_ATOMIC_INT_LOCK_FREE == 2 || BOOST_ATOMIC_SHORT_LOCK_FREE == 2 || BOOST_ATOMIC_CHAR_LOCK_FREE == 2 || BOOST_ATOMIC_LONG_LOCK_FREE == 2 || (defined(BOOST_HAS_LONG_LONG) && BOOST_ATOMIC_LLONG_LOCK_FREE == 2)
is false? Any platform not supported by Boost.Atomic. The condition will be positive on any platform currently supported by Boost.Atomic.
I would like to have an alternative for these platforms to avoid making Boost.Thread fail just because Boost.Atomic is not supported. Best, Vicente