Spec-Zone.ru › C++

std::atomic_flag_clear, std::atomic_flag_clear_explicit

Определено в заголовке <atomic>
void atomic_flag_clear( volatile std::atomic_flag* obj ) noexcept;
(1) (с C++11)
void atomic_flag_clear( std::atomic_flag* obj ) noexcept;
(2) (с C++11)
void atomic_flag_clear_explicit( volatile std::atomic_flag* obj, 
                                 std::memory_order order ) noexcept;
(3) (с C++11)
void atomic_flag_clear_explicit( std::atomic_flag* obj, 
                                 std::memory_order order ) noexcept;
(4) (с C++11)

Атомарно изменяет состояние std::atomic_flag, на который указывает obj, на очищенное (false).

1,2) Порядок синхронизации памяти — std::memory_order_seq_cst.
3,4) Порядок синхронизации памяти — order.
Если order является одним из std::memory_order_consume, std::memory_order_acquire и std::memory_order_acq_rel, поведение не определено.

Параметры

obj - указатель на std::atomic_flag для доступа
order - порядок синхронизации памяти

Значение результата

(нет)

Примечания

std::atomic_flag_clear и std::atomic_flag_clear_explicit могут быть реализованы как obj->clear() и obj->clear(order) соответственно.

См. также

atomic_flag
(C++11)
атомарный тип данных с логическим значением без блокировки
(класс)
atomic_flag_test_and_setatomic_flag_test_and_set_explicit
(C++11)(C++11)
атомарно устанавливает флаг в true и возвращает его предыдущее значение
(функция)
memory_order
(C++11)
определяет ограничения порядка памяти для данной атомарной операции
(перечисление)
Документация C для atomic_flag_clear, atomic_flag_clear_explicit

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/atomic/atomic_flag_clear

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API