Struktura Atomowej
Zawiera opis obiektu, który wykonuje operacje Atomowej przechowywanej wartości typu Ty.
template <class Ty>
struct atomic;
Członkowie
Publiczne konstruktory
Nazwa |
Opis |
---|---|
Tworzy obiekt Atomowej. |
Podmioty publiczne
Nazwa |
Opis |
---|---|
Odczytuje i zwraca wartość przechowywana.(Metoda Atomic::Load) |
|
Używa określonej wartości w celu zastąpienia wartości przechowywanych.(Metoda Atomic::store) |
|
Zwiększa wartość przechowywana.Używane tylko przez integralną i wskaźnik specjalizacji. |
|
Dodaje określoną wartość do zapisanych wartości.Używane tylko przez integralną i wskaźnik specjalizacji. |
|
Zmniejsza wartość przechowywana.Używane tylko przez integralną i wskaźnik specjalizacji. |
|
Odejmuje określona wartość z wartością przechowywaną.Używane tylko przez integralną i wskaźnik specjalizacji. |
|
Wykonuje logiczną and na określoną wartość i wartości przechowywanej.Używane tylko przez integralną specjalizacji. |
|
Wykonuje logiczną or na określoną wartość i wartości przechowywanej.Używane tylko przez integralną specjalizacji. |
|
Wykonuje logiczną exclusive or na określoną wartość i wartości przechowywanej.Używane tylko przez integralną specjalizacji. |
Metody publiczne
Nazwa |
Opis |
---|---|
Wykonuje atomic_compare_and_exchange operacji na this i zwraca wynik. |
|
Wykonuje weak_atomic_compare_and_exchange operacji na this i zwraca wynik. |
|
Dodaje określoną wartość do zapisanych wartości. |
|
Wykonuje logiczną and na określoną wartość i wartości przechowywanej. |
|
Wykonuje logiczną or na określoną wartość i wartości przechowywanej. |
|
Odejmuje określona wartość z wartością przechowywaną. |
|
Wykonuje logiczną exclusive or na określoną wartość i wartości przechowywanej. |
|
Określa, czy atomowej operacji na this są lock wolnego.Atomowej typ jest lock wolnego użycie nie atomowej operacji na tego typu blokady. |
|
Odczytuje i zwraca wartość przechowywana. |
|
Używa określonej wartości w celu zastąpienia wartości przechowywanych. |
Uwagi
Typ Ty musi być trywialnie copyable.Oznacza to, że za pomocą memcpy skopiować jego bajtów musi mieć prawidłowy Ty obiekt, który porównuje równa oryginalnego obiektu.compare_exchange_weak i compare_exchange_strong Członkowskich funkcje wykorzystania memcmp do ustalenia, czy dwa Ty wartości są równe.Te funkcje nie będzie używać Ty-zdefiniowane operator==.Funkcje składowe, z atomic używać memcpy do kopiowania wartości typu Ty.
Częściowe specjalizacji, atomic<Ty *>, istnieje dla wszystkich typów wskaźnika.Specjalizacji umożliwia dodanie przesunięcia do wartości zarządzanej wskaźnik lub odejmowania przesunięcie z niego.Operacje arytmetyczne podjąć argumentu typu ptrdiff_t i dostosować ten argument, zgodnie z rozmiarem Ty być zgodne z adresu zwykłego arytmetycznych.
Dla każdego typu integralną, z wyjątkiem istnieje specjalizacji bool.Każdej specjalizacji zawiera bogaty zestaw metod, atomowej operacji arytmetycznych i logiczne.
atomic<char> |
atomic<signed char> |
atomic<unsigned char> |
atomic<char16_t> |
atomic<char32_t> |
atomic<wchar_t> |
atomic<short> |
atomic<unsigned short> |
atomic<int> |
atomic<unsigned int> |
atomic<long> |
atomic<unsigned long> |
atomic<long long> |
atomic<unsigned long long> |
Integralną specjalizacji pochodzą od odpowiadającego **atomic_**integral typów.Na przykład atomic<unsigned int> jest pochodną atomic_uint.
Wymagania
Nagłówek: atomic
Obszar nazw: std