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) соответственно.
См. также
|
(C++11) | атомарный тип данных с логическим значением без блокировки (класс) |
|
(C++11)(C++11) | атомарно устанавливает флаг в true и возвращает его предыдущее значение (функция) |
|
(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