Freigeben über


memory_order-Enumeration

Stellt symbolische Namen für Synchronisierungsvorgänge auf Speicheradressen bereit. Diese Vorgänge wirken sich auf das Sichtbarwerden der Zuweisung eines Thread in einem anderen aus.

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;

Hinweise

memory_order_relaxed

Keine Reihenfolge erforderlich.

memory_order_consume

Ein Ladevorgang fungiert als Nutzungsvorgang auf der Speicheradresse.

memory_order_acquire

Ein Ladevorgang fungiert als Abrufvorgang auf der Speicheradresse.

memory_order_release

Ein Speichervorgang fungiert als eine Befreiungsaktion auf der Speicheradresse.

memory_order_acq_rel

Kombiniert memory_order_acquire und memory_order_release.

memory_order_seq_cst

Kombiniert memory_order_acquire und memory_order_release. Als memory_order_seq_cst gekennzeichnete Speicherzugriffe müssen nacheinander konsistent sein.

Anforderungen

Header: atomisch

Namespace: std

Siehe auch

Referenz

<atomic>