Namespaces
Variants

std:: atomic_signal_fence

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)
atomic_signal_fence
(C++11)
Free functions for atomic operations
Free functions for atomic flags
Défini dans l'en-tête <atomic>
extern "C" void atomic_signal_fence ( std:: memory_order order ) noexcept ;
(depuis C++11)

Établit l'ordonnancement de synchronisation mémoire des accès non atomiques et atomiques relâchés, comme indiqué par order , entre un thread et un gestionnaire de signal exécuté sur le même thread. Ceci est équivalent à std::atomic_thread_fence , sauf qu'aucune instruction CPU pour l'ordonnancement mémoire n'est émise. Seul le réordonnancement des instructions par le compilateur est supprimé comme order l'indique. Par exemple, une barrière avec sémantique de release empêche les lectures ou écritures d'être déplacées au-delà des écritures suivantes et une barrière avec sémantique d'acquire empêche les lectures ou écritures d'être déplacées avant les lectures précédentes.

Table des matières

Paramètres

order - l'ordre de mémoire exécuté par cette barrière

Valeur de retour

(aucun)

Exemple

Voir aussi

définit les contraintes d'ordonnancement de la mémoire pour l'opération atomique donnée
(enum)
primitive de synchronisation de barrière générique dépendante de l'ordonnancement de la mémoire
(function)
documentation C pour atomic_signal_fence