std::atomic_fetch_and, std::atomic_fetch_and_explicit
Материал из cppreference.com
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
Определено в заголовочном файле <atomic> | ||
template<class Integral > Integral atomic_fetch_and(std::atomic<Integral>* obj, Integral arg ); | (1) | (начиная с C++11) |
template<class Integral > Integral atomic_fetch_and(volatilestd::atomic<Integral>* obj, Integral arg ); | (2) | (начиная с C++11) |
template<class Integral > Integral atomic_fetch_and_explicit(std::atomic<Integral>* obj, Integral arg, | (3) | (начиная с C++11) |
template<class Integral > Integral atomic_fetch_and_explicit(volatilestd::atomic<Integral>* obj, Integral arg, | (4) | (начиная с C++11) |
Атомарно заменяет значение указано на
3-4) arg
с результатом побитового И между старым значением obj
и arg
, и возвращает значение obj
состоялась ранее, как по obj->fetch_and(arg)Оригинал:
Atomically replaces the value pointed by
arg
with the result of bitwise AND between the old value of obj
and arg
, and returns the value obj
held previously, as if by obj->fetch_and(arg)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Атомарно заменяет значение указано на
arg
с результатом побитового И между старым значением obj
и arg
, и возвращает значение obj
состоялась ранее, как по obj->fetch_and(arg, order)Оригинал:
Atomically replaces the value pointed by
arg
with the result of bitwise AND between the old value of obj
and arg
, and returns the value obj
held previously, as if by obj->fetch_and(arg, order)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править]Параметры
obj | — | Указатель на атомном объекте изменить Оригинал: pointer to the atomic object to modify Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
arg | — | значение побитовое И со значением, хранящимся в атомном объекте Оригинал: the value to bitwise AND 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 by the atomic object pointed to by
obj
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править]Исключения
спецификация noexcept:
noexcept
[править]Возможная реализация
template<class T >typenamestd::enable_if<std::is_integral<T>::value&&!std::is_same<T, bool>::value, T>::type atomic_fetch_and(std::atomic<T>* obj, T arg);{return obj->fetch_and(arg);} |
[править]Пример
Этот раздел не завершён Причина: нет примера |
[править]См. также
атомарно выполняет побитовое И между аргументом и значением атомарного объекта и получает значение, сохранённое ранее (public функция-элемент std::atomic ) | |
(C++11)(C++11) | заменяет атомарный объект результатом поразрядного ИЛИ с неатомарным аргументом и получает предыдущее атомарное значение (шаблон функции) |
(C++11)(C++11) | заменяет атомарный объект результатом побитового XOR с неатомарным аргументом и получает предыдущее атомарное значение (шаблон функции) |
Документация C по atomic_fetch_and, atomic_fetch_and_explicit |