Пространства имён
Варианты
Действия

atomic_exchange, atomic_exchange_explicit

Материал из cppreference.com
< c‎ | atomic

 
 
Атомарные операции
Типы
Оригинал:
Types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
memory_order
atomic_flag
Макросы
Оригинал:
Macros
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
ATOMIC_***_LOCK_FREE
ATOMIC_FLAG_INIT
ATOMIC_VAR_INIT
kill_dependency
Функции
Оригинал:
Functions
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
atomic_flag_test_and_set
atomic_flag_clear
atomic_init
atomic_is_lock_free
atomic_store
atomic_load
atomic_exchange
atomic_compare_exchange
atomic_fetch_add
atomic_fetch_sub
atomic_fetch_or
atomic_fetch_xor
atomic_fetch_and
atomic_thread_fence
atomic_signal_fence
 
Определено в заголовочном файле <stdatomic.h>
C atomic_exchange( volatile A* obj, C desired );
(1)
C atomic_exchange_explicit( volatile A* obj, C desired, memory_order order );
(2)

Atomically replaces the value pointed by obj with desired and returns the value obj held previously. The operation is read-modify-write operation. The first version orders memory accesses according to memory_order_seq_cst, the second version orders memory accesses according to order.

Это общие функции определены для всех типов атомного объекта. A это тип атомного объекта, C является не атомная тип, соответствующий A.
Оригинал:
This is a общие функции defined for all atomic object types. A is the type of an atomic object, C is the non-atomic type corresponding to A.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Параметры

obj -
Указатель на атомном объекте изменить
Оригинал:
pointer to the atomic object to modify
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
desired - the value to replace the atomic object with
order -
памяти, синхронизация заказов для этой операции: все допустимые значения
Оригинал:
the memory synchronization ordering for this operation: all values are permitted
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Возвращаемое значение

Значение имевшие будет атомный объект, на который указывает obj.
Оригинал:
The value held previously be the atomic object pointed to by obj.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] См. также

свопы значение с атомным объектом, если старое значение то, что, как ожидается, в противном случае читает старое значение
Оригинал:
swaps a value with the an atomic object if the old value is what is expected, otherwise reads the old value
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
C++ documentation for atomic_exchange, atomic_exchange_explicit