Namespaces
Variants

std:: atomic_flag_clear, std:: atomic_flag_clear_explicit

From cppreference.net
Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
atomic_flag_clear atomic_flag_clear_explicit
(C++11) (C++11)
Definiert im Header <atomic>
void atomic_flag_clear ( volatile std:: atomic_flag * obj ) noexcept ;
(1) (seit C++11)
void atomic_flag_clear ( std:: atomic_flag * obj ) noexcept ;
(2) (seit C++11)
void atomic_flag_clear_explicit ( volatile std:: atomic_flag * obj,
std:: memory_order order ) noexcept ;
(3) (seit C++11)
void atomic_flag_clear_explicit ( std:: atomic_flag * obj,
std:: memory_order order ) noexcept ;
(4) (seit C++11)

Ändert atomar den Zustand des std::atomic_flag , auf das obj zeigt, auf Clear ( false ).

1,2) Die Speichersynchronisierungsreihenfolge ist std:: memory_order_seq_cst .
3,4) Die Speichersynchronisierungsreihenfolge ist order .
Wenn order einer der Werte std:: memory_order_consume , std:: memory_order_acquire oder std:: memory_order_acq_rel ist, ist das Verhalten undefiniert.

Inhaltsverzeichnis

Parameter

obj - Zeiger auf std::atomic_flag für den Zugriff
order - die Speichersynchronisierungsreihenfolge

Hinweise

std::atomic_flag_clear und std::atomic_flag_clear_explicit können als obj - > clear ( ) bzw. obj - > clear ( order ) implementiert werden.

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 2138 C++11 order könnte std:: memory_order_consume sein das Verhalten ist in diesem Fall undefiniert

Siehe auch

der lockfreie boolesche atomare Typ
(Klasse)
setzt das Flag atomar auf true und gibt seinen vorherigen Wert zurück
(Funktion)
definiert Speicherordnungsbeschränkungen für die gegebene atomare Operation
(Enumeration)
C-Dokumentation für atomic_flag_clear , atomic_flag_clear_explicit