std::atomic_flag:: clear
|
|
Member functions | ||||
atomic_flag::clear
|
||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
Defined in header
<atomic>
|
||
void
clear
(
std::
memory_order
order
=
std:: memory_order_seq_cst ) volatile noexcept ; |
(1) | (since C++11) |
void
clear
(
std::
memory_order
order
=
std:: memory_order_seq_cst ) noexcept ; |
(2) | (since C++11) |
Atomically changes the state of a std::atomic_flag to clear ( false ).
If order is one of std:: memory_order_consume , std:: memory_order_acquire and std:: memory_order_acq_rel , the behavior is undefined.
Parameters
order | - | the memory synchronization ordering |
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 2138 | C++11 | order could be std:: memory_order_consume | the behavior is undefined in this case |
See also
atomically sets the flag to
true
and obtains its previous value
(public member function) |
|
(C++11)
(C++11)
|
atomically sets the value of the flag to
false
(function) |
(C++11)
|
defines memory ordering constraints for the given atomic operation
(enum) |