Partager via


memory_order, énum

Fournit des noms symboliques pour les opérations de synchronisation sur les emplacements de mémoire. Ces opérations affectent la façon dont les assignations dans un thread sont visibles dans un autre.

typedef enum memory_order {
   memory_order_relaxed,
   memory_order_consume,
   memory_order_acquire,
   memory_order_release,
   memory_order_acq_rel,
   memory_order_seq_cst,
} memory_order;

Notes

memory_order_relaxed

Aucune commande requise.

memory_order_consume

Une opération de chargement sert d'opération de consommation sur l'emplacement de mémoire.

memory_order_acquire

Une opération de chargement sert d'opération d'acquisition sur l'emplacement de mémoire.

memory_order_release

Une opération de stockage sert d'opération de version sur l'emplacement de mémoire.

memory_order_acq_rel

Combine memory_order_acquire et memory_order_release.

memory_order_seq_cst

Combine memory_order_acquire et memory_order_release. Les accès mémoire marqués comme memory_order_seq_cst doivent être séquentiellement cohérents.

Configuration requise

En-tête : atomique

Espace de noms : std

Voir aussi

Référence

<atomic>