atomic_fetch_add, atomic_fetch_add_explicit
Материал из cppreference.com
|
|
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
<metanoindex/>
<tbody> </tbody>| Определено в заголовочном файле <stdatomic.h>
|
||
C atomic_fetch_add( volatile A* obj, M arg ); |
(1) | (начиная с C11) |
C atomic_fetch_add_explicit( volatile A* obj, M arg, memory_order order ); |
(2) | (начиная с C11) |
Атомарно заменяет значение указано на
obj в результате сложения arg к старому значению obj, и возвращает значение obj состоялось ранее. Операция чтения-модификации-записи. Первая версия заказы доступ к памяти по memory_order_seq_cst, вторая версия заказы доступ к памяти по order.Оригинал:
Atomically replaces the value pointed by
obj with the result of addition of arg to the old value of obj, 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.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Это общие функции определены для всех типов атомного объекта.
A это тип атомного объекта, M либо неатомической типа, соответствующие A если A является атомная целого типа, или ptrdiff_t если A является атомарный тип указателя.Оригинал:
This is a общие функции defined for all atomic object types.
A is the type of an atomic object, M is either the non-atomic type corresponding to A if A is atomic integer type, or ptrdiff_t if A is atomic pointer type.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Для целого числа типов, арифметические определяется использовать дополнения до двух представительства. Там же
Оригинал:
For signed integer types, arithmetic is defined to use two’s complement representation. There
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
не к неопределенному результату. Для типов указателей, результат может быть неопределенным адресом, но операциях в противном случае не имеют неопределенное поведение.
Оригинал:
are no undefined results. For pointer types, the result may be an undefined address, but the operations otherwise have no undefined behavior.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Параметры
| obj | — | Указатель на атомном объекте изменить
Оригинал: pointer to the atomic object to modify Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
| arg | — | значение, добавляемое к значению, хранящемуся в атомном объекте
Оригинал: the value to add to the value stored in the atomic object Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
| order | — | памяти, синхронизация заказов для этой операции: все допустимые значения
Оригинал: the memory synchronization ordering for this operation: all values are permitted Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
Возвращаемое значение
Значение имевшие будет атомный объект, на который указывает
obj.Оригинал:
The value held previously be the atomic object pointed to by
obj.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
См. также
атомная вычитание Оригинал: atomic subtraction Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (функция) | |
Документация C++ по atomic_fetch_add, atomic_fetch_add_explicit
| |