|
|
Member functions | ||||
(C++20) | ||||
(C++20) | ||||
(C++20) | ||||
Constants | ||||
atomic::is_always_lock_free (C++17) | ||||
Specialized member functions | ||||
Specialized for integral, floating-point(C++20) and pointer types | ||||
Specialized for integral and pointer types only | ||||
(C++26) | ||||
(C++26) | ||||
Specialized for integral types only | ||||
staticconstexprbool is_always_lock_free=/*implementation-defined*/; | (since C++17) | |
Equalstrue if this atomic type is always lock-free andfalse if it is never or sometimes lock-free.
The value of this constant is consistent with both the macroATOMIC_xxx_LOCK_FREE
, where defined, with the member functionis_lock_free and non-member functionstd::atomic_is_lock_free.
There is no non-member function equivalent of this static member constant because non-member functions take pointers to atomic types, and therefore aren't as useful inconstant expressions.
Feature-test macro | Value | Std | Feature |
---|---|---|---|
__cpp_lib_atomic_is_always_lock_free | 201603L | (C++17) | constexpr atomic<T>::is_always_lock_free |
checks if the atomic object is lock-free (public member function)[edit] | |
(C++11) | checks if the atomic type's operations are lock-free (function template)[edit] |