std::atomic< unsigned int > Struct Reference
Atomics

`#include <atomic>`

Inheritance diagram for std::atomic< unsigned int >:
[legend]

## Public Types

typedef __atomic_base< unsigned int > | __base_type
typedef unsigned int | __integral_type
using | difference_type = value_type
using | value_type = unsigned int

## Public Member Functions

constexpr | atomic (__integral_type __i) noexcept
| atomic (const atomic &)=delete
bool | compare_exchange_strong (__int_type &__i1, __int_type __i2, memory_order __m1, memory_order __m2) noexcept
bool | compare_exchange_strong (__int_type &__i1, __int_type __i2, memory_order __m1, memory_order __m2) volatile noexcept
bool | compare_exchange_strong (__int_type &__i1, __int_type __i2, memory_order __m=memory_order_seq_cst) noexcept
bool | compare_exchange_strong (__int_type &__i1, __int_type __i2, memory_order __m=memory_order_seq_cst) volatile noexcept
bool | compare_exchange_weak (__int_type &__i1, __int_type __i2, memory_order __m1, memory_order __m2) noexcept
bool | compare_exchange_weak (__int_type &__i1, __int_type __i2, memory_order __m1, memory_order __m2) volatile noexcept
bool | compare_exchange_weak (__int_type &__i1, __int_type __i2, memory_order __m=memory_order_seq_cst) noexcept
bool | compare_exchange_weak (__int_type &__i1, __int_type __i2, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | exchange (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | exchange (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | fetch_add (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | fetch_add (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | fetch_and (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | fetch_and (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | fetch_or (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | fetch_or (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | fetch_sub (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | fetch_sub (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
__int_type | fetch_xor (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
__int_type | fetch_xor (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept
bool | is_lock_free () const noexcept
bool | is_lock_free () const volatile noexcept
__int_type | load (memory_order __m=memory_order_seq_cst) const noexcept
__int_type | load (memory_order __m=memory_order_seq_cst) const volatile noexcept
| operator __int_type () const noexcept
| operator __int_type () const volatile noexcept
__int_type | operator&= (__int_type __i) noexcept
__int_type | operator&= (__int_type __i) volatile noexcept
__int_type | operator++ () noexcept
__int_type | operator++ () volatile noexcept
__int_type | operator++ (int) noexcept
__int_type | operator++ (int) volatile noexcept
__int_type | operator+= (__int_type __i) noexcept
__int_type | operator+= (__int_type __i) volatile noexcept
__int_type | operator-- () noexcept
__int_type | operator-- () volatile noexcept
__int_type | operator-- (int) noexcept
__int_type | operator-- (int) volatile noexcept
__int_type | operator-= (__int_type __i) noexcept
__int_type | operator-= (__int_type __i) volatile noexcept
atomic & | operator= (const atomic &) volatile=delete
atomic & | operator= (const atomic &)=delete
__int_type | operator^= (__int_type __i) noexcept
__int_type | operator^= (__int_type __i) volatile noexcept
__int_type | operator|= (__int_type __i) noexcept
__int_type | operator|= (__int_type __i) volatile noexcept
void | store (__int_type __i, memory_order __m=memory_order_seq_cst) noexcept
void | store (__int_type __i, memory_order __m=memory_order_seq_cst) volatile noexcept

## Static Public Attributes

static constexpr bool | is_always_lock_free

## Detailed Description

Explicit specialization for unsigned int.

Definition at line 845 of file atomic.

## Member Typedef Documentation

## __base_type

typedef __atomic_base<unsigned int> std::atomic< unsigned int >::__base_type

Definition at line 848 of file atomic.

## __integral_type

typedef unsigned int std::atomic< unsigned int >::__integral_type

Definition at line 847 of file atomic.

## difference_type

using std::__atomic_base< unsigned int >::difference_type = value_type

inherited

Definition at line 327 of file atomic_base.h.

## value_type

using std::__atomic_base< unsigned int >::value_type = unsigned int

inherited

Definition at line 326 of file atomic_base.h.

## Constructor & Destructor Documentation

## atomic()

constexpr std::atomic< unsigned int >::atomic | ( | __integral_type | __i | ) |

inline constexpr noexcept

Definition at line 856 of file atomic.

## Member Function Documentation

## compare_exchange_strong() [1/4]

bool std::__atomic_base< unsigned int >::compare_exchange_strong | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m1,
|  | memory_order | __m2
| ) |  |

inline noexcept inherited

Definition at line 555 of file atomic_base.h.

## compare_exchange_strong() [2/4]

bool std::__atomic_base< unsigned int >::compare_exchange_strong | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m1,
|  | memory_order | __m2
| ) |  | volatile

inline noexcept inherited

Definition at line 565 of file atomic_base.h.

## compare_exchange_strong() [3/4]

bool std::__atomic_base< unsigned int >::compare_exchange_strong | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 576 of file atomic_base.h.

## compare_exchange_strong() [4/4]

bool std::__atomic_base< unsigned int >::compare_exchange_strong | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 584 of file atomic_base.h.

## compare_exchange_weak() [1/4]

bool std::__atomic_base< unsigned int >::compare_exchange_weak | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m1,
|  | memory_order | __m2
| ) |  |

inline noexcept inherited

Definition at line 518 of file atomic_base.h.

## compare_exchange_weak() [2/4]

bool std::__atomic_base< unsigned int >::compare_exchange_weak | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m1,
|  | memory_order | __m2
| ) |  | volatile

inline noexcept inherited

Definition at line 528 of file atomic_base.h.

## compare_exchange_weak() [3/4]

bool std::__atomic_base< unsigned int >::compare_exchange_weak | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 539 of file atomic_base.h.

## compare_exchange_weak() [4/4]

bool std::__atomic_base< unsigned int >::compare_exchange_weak | ( | __int_type & | __i1,
|  | __int_type | __i2,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 547 of file atomic_base.h.

## exchange() [1/2]

__int_type std::__atomic_base< unsigned int >::exchange | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 503 of file atomic_base.h.

## exchange() [2/2]

__int_type std::__atomic_base< unsigned int >::exchange | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 511 of file atomic_base.h.

## fetch_add() [1/2]

__int_type std::__atomic_base< unsigned int >::fetch_add | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 616 of file atomic_base.h.

## fetch_add() [2/2]

__int_type std::__atomic_base< unsigned int >::fetch_add | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 621 of file atomic_base.h.

## fetch_and() [1/2]

__int_type std::__atomic_base< unsigned int >::fetch_and | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 636 of file atomic_base.h.

## fetch_and() [2/2]

__int_type std::__atomic_base< unsigned int >::fetch_and | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 641 of file atomic_base.h.

## fetch_or() [1/2]

__int_type std::__atomic_base< unsigned int >::fetch_or | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 646 of file atomic_base.h.

## fetch_or() [2/2]

__int_type std::__atomic_base< unsigned int >::fetch_or | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 651 of file atomic_base.h.

## fetch_sub() [1/2]

__int_type std::__atomic_base< unsigned int >::fetch_sub | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 626 of file atomic_base.h.

## fetch_sub() [2/2]

__int_type std::__atomic_base< unsigned int >::fetch_sub | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 631 of file atomic_base.h.

## fetch_xor() [1/2]

__int_type std::__atomic_base< unsigned int >::fetch_xor | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 656 of file atomic_base.h.

## fetch_xor() [2/2]

__int_type std::__atomic_base< unsigned int >::fetch_xor | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 661 of file atomic_base.h.

## is_lock_free() [1/2]

bool std::__atomic_base< unsigned int >::is_lock_free | ( |  | ) | const

inline noexcept inherited

Definition at line 440 of file atomic_base.h.

## is_lock_free() [2/2]

bool std::__atomic_base< unsigned int >::is_lock_free | ( |  | ) | const volatile

inline noexcept inherited

Definition at line 448 of file atomic_base.h.

## load() [1/2]

__int_type std::__atomic_base< unsigned int >::load | ( | memory_order | __m = `memory_order_seq_cst` | ) | const

inline noexcept inherited

Definition at line 481 of file atomic_base.h.

## load() [2/2]

__int_type std::__atomic_base< unsigned int >::load | ( | memory_order | __m = `memory_order_seq_cst` | ) | const volatile

inline noexcept inherited

Definition at line 492 of file atomic_base.h.

## operator __int_type() [1/2]

std::__atomic_base< unsigned int >::operator __int_type | ( |  | ) | const

inline noexcept inherited

Definition at line 347 of file atomic_base.h.

## operator __int_type() [2/2]

std::__atomic_base< unsigned int >::operator __int_type | ( |  | ) | const volatile

inline noexcept inherited

Definition at line 350 of file atomic_base.h.

## operator&=() [1/2]

__int_type std::__atomic_base< unsigned int >::operator&= | ( | __int_type | __i | ) |

inline noexcept inherited

Definition at line 416 of file atomic_base.h.

## operator&=() [2/2]

__int_type std::__atomic_base< unsigned int >::operator&= | ( | __int_type | __i | ) | volatile

inline noexcept inherited

Definition at line 420 of file atomic_base.h.

## operator++() [1/4]

__int_type std::__atomic_base< unsigned int >::operator++ | ( |  | ) |

inline noexcept inherited

Definition at line 384 of file atomic_base.h.

## operator++() [2/4]

__int_type std::__atomic_base< unsigned int >::operator++ | ( |  | ) | volatile

inline noexcept inherited

Definition at line 388 of file atomic_base.h.

## operator++() [3/4]

__int_type std::__atomic_base< unsigned int >::operator++ | ( | int |  | ) |

inline noexcept inherited

Definition at line 368 of file atomic_base.h.

## operator++() [4/4]

__int_type std::__atomic_base< unsigned int >::operator++ | ( | int |  | ) | volatile

inline noexcept inherited

Definition at line 372 of file atomic_base.h.

## operator+=() [1/2]

__int_type std::__atomic_base< unsigned int >::operator+= | ( | __int_type | __i | ) |

inline noexcept inherited

Definition at line 400 of file atomic_base.h.

## operator+=() [2/2]

__int_type std::__atomic_base< unsigned int >::operator+= | ( | __int_type | __i | ) | volatile

inline noexcept inherited

Definition at line 404 of file atomic_base.h.

## operator--() [1/4]

__int_type std::__atomic_base< unsigned int >::operator-- | ( |  | ) |

inline noexcept inherited

Definition at line 392 of file atomic_base.h.

## operator--() [2/4]

__int_type std::__atomic_base< unsigned int >::operator-- | ( |  | ) | volatile

inline noexcept inherited

Definition at line 396 of file atomic_base.h.

## operator--() [3/4]

__int_type std::__atomic_base< unsigned int >::operator-- | ( | int |  | ) |

inline noexcept inherited

Definition at line 376 of file atomic_base.h.

## operator--() [4/4]

__int_type std::__atomic_base< unsigned int >::operator-- | ( | int |  | ) | volatile

inline noexcept inherited

Definition at line 380 of file atomic_base.h.

## operator-=() [1/2]

__int_type std::__atomic_base< unsigned int >::operator-= | ( | __int_type | __i | ) |

inline noexcept inherited

Definition at line 408 of file atomic_base.h.

## operator-=() [2/2]

__int_type std::__atomic_base< unsigned int >::operator-= | ( | __int_type | __i | ) | volatile

inline noexcept inherited

Definition at line 412 of file atomic_base.h.

## operator^=() [1/2]

__int_type std::__atomic_base< unsigned int >::operator^= | ( | __int_type | __i | ) |

inline noexcept inherited

Definition at line 432 of file atomic_base.h.

## operator^=() [2/2]

__int_type std::__atomic_base< unsigned int >::operator^= | ( | __int_type | __i | ) | volatile

inline noexcept inherited

Definition at line 436 of file atomic_base.h.

## operator|=() [1/2]

__int_type std::__atomic_base< unsigned int >::operator|= | ( | __int_type | __i | ) |

inline noexcept inherited

Definition at line 424 of file atomic_base.h.

## operator|=() [2/2]

__int_type std::__atomic_base< unsigned int >::operator|= | ( | __int_type | __i | ) | volatile

inline noexcept inherited

Definition at line 428 of file atomic_base.h.

## store() [1/2]

void std::__atomic_base< unsigned int >::store | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  |

inline noexcept inherited

Definition at line 456 of file atomic_base.h.

## store() [2/2]

void std::__atomic_base< unsigned int >::store | ( | __int_type | __i,
|  | memory_order | __m = `memory_order_seq_cst`
| ) |  | volatile

inline noexcept inherited

Definition at line 468 of file atomic_base.h.

## Member Data Documentation

## is_always_lock_free

constexpr bool std::atomic< unsigned int >::is_always_lock_free

static constexpr

Definition at line 862 of file atomic.

The documentation for this struct was generated from the following file:

- atomic