41 #include <QtCore/qglobal.h>
46 #include <QtCore/qbasicatomic.h>
54 # undef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
63 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
73 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
163 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
170 template <
typename T>
174 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
183 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
230 #ifdef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
231 # undef QT_BASIC_ATOMIC_HAS_CONSTRUCTORS
240 template <
typename T>
259 template <
typename T>
262 if (
d->ref.loadRelaxed() == 1)
The QAtomicInt class provides platform-independent atomic operations on int.
QAtomicInt(int value=0) noexcept
The QAtomicInteger class provides platform-independent atomic operations on integers.
QAtomicInteger & operator=(const QAtomicInteger &other) noexcept
QAtomicInteger(const QAtomicInteger &other) noexcept
QAtomicInteger(T value=0) noexcept
The QAtomicPointer class is a template class that provides platform-independent atomic operations on ...
QAtomicPointer(const QAtomicPointer< T > &other) noexcept
QAtomicPointer(T *value=nullptr) noexcept
QAtomicPointer< T > & operator=(const QAtomicPointer< T > &other) noexcept
T fetchAndOrAcquire(T valueToAdd) noexcept
T fetchAndOrRelaxed(T valueToAdd) noexcept
T fetchAndStoreRelease(T newValue) noexcept
T fetchAndAddOrdered(T valueToAdd) noexcept
static constexpr bool isTestAndSetNative() noexcept
T operator+=(T v) noexcept
bool testAndSetRelaxed(T expectedValue, T newValue) noexcept
bool testAndSetOrdered(T expectedValue, T newValue) noexcept
T fetchAndAddAcquire(T valueToAdd) noexcept
T fetchAndSubAcquire(T valueToAdd) noexcept
static constexpr bool isFetchAndAddWaitFree() noexcept
static constexpr bool isReferenceCountingNative() noexcept
T fetchAndXorRelease(T valueToAdd) noexcept
T fetchAndAndOrdered(T valueToAdd) noexcept
T fetchAndXorRelaxed(T valueToAdd) noexcept
void storeRelaxed(T newValue) noexcept
T fetchAndStoreOrdered(T newValue) noexcept
T loadAcquire() const noexcept
T fetchAndAndRelease(T valueToAdd) noexcept
T fetchAndStoreAcquire(T newValue) noexcept
bool testAndSetAcquire(T expectedValue, T newValue) noexcept
T fetchAndStoreRelaxed(T newValue) noexcept
T fetchAndSubRelaxed(T valueToAdd) noexcept
T operator-=(T v) noexcept
T fetchAndAddRelaxed(T valueToAdd) noexcept
static constexpr bool isReferenceCountingWaitFree() noexcept
bool testAndSetRelease(T expectedValue, T newValue) noexcept
static constexpr bool isFetchAndAddNative() noexcept
T fetchAndAndRelaxed(T valueToAdd) noexcept
T fetchAndOrRelease(T valueToAdd) noexcept
T fetchAndAndAcquire(T valueToAdd) noexcept
T operator^=(T v) noexcept
T fetchAndXorAcquire(T valueToAdd) noexcept
T fetchAndOrOrdered(T valueToAdd) noexcept
static constexpr bool isTestAndSetWaitFree() noexcept
T operator|=(T v) noexcept
T fetchAndAddRelease(T valueToAdd) noexcept
void storeRelease(T newValue) noexcept
static constexpr bool isFetchAndStoreNative() noexcept
T fetchAndSubOrdered(T valueToAdd) noexcept
T loadRelaxed() const noexcept
static constexpr bool isFetchAndStoreWaitFree() noexcept
T fetchAndXorOrdered(T valueToAdd) noexcept
T fetchAndSubRelease(T valueToAdd) noexcept
T operator&=(T v) noexcept
Type fetchAndAddOrdered(qptrdiff valueToAdd) noexcept
bool testAndSetRelaxed(Type expectedValue, Type newValue) noexcept
Type fetchAndStoreAcquire(Type newValue) noexcept
Type fetchAndStoreRelease(Type newValue) noexcept
static constexpr bool isFetchAndAddNative() noexcept
bool testAndSetRelease(Type expectedValue, Type newValue) noexcept
Type fetchAndStoreOrdered(Type newValue) noexcept
bool testAndSetAcquire(Type expectedValue, Type newValue) noexcept
Type loadAcquire() const noexcept
static constexpr bool isFetchAndAddWaitFree() noexcept
bool testAndSetOrdered(Type expectedValue, Type newValue) noexcept
static constexpr bool isTestAndSetNative() noexcept
Type loadRelaxed() const noexcept
static constexpr bool isFetchAndStoreWaitFree() noexcept
void storeRelaxed(Type newValue) noexcept
Type fetchAndAddRelaxed(qptrdiff valueToAdd) noexcept
void storeRelease(Type newValue) noexcept
Type fetchAndAddRelease(qptrdiff valueToAdd) noexcept
static constexpr bool isTestAndSetWaitFree() noexcept
Type fetchAndAddAcquire(qptrdiff valueToAdd) noexcept
Type fetchAndStoreRelaxed(Type newValue) noexcept
static constexpr bool isFetchAndStoreNative() noexcept
QT_WARNING_POP void qAtomicAssign(T *&d, T *x)
void qAtomicDetach(T *&d)
#define QT_WARNING_DISABLE_GCC(text)
EGLOutputLayerEXT EGLint EGLAttrib value
GLint GLint GLint GLint GLint x
[0]