Condividi tramite


Enumerazioni <atomic>

Enumerazione memory_order

Fornisce nomi simbolici per le operazioni di sincronizzazione sulle posizioni di memoria. Queste operazioni influiscono sul modo in cui gli assegnamenti in un thread diventano visibili in un altro.

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;

Membri di enumerazione

Nome Descrizione
memory_order_relaxed Nessun ordinamento necessario.
memory_order_consume Un'operazione di caricamento funge da operazione di utilizzo sulla posizione di memoria.
memory_order_acquire Un'operazione di caricamento funge da operazione di acquisizione sulla posizione di memoria.
memory_order_release Un'operazione di archiviazione funge da operazione di rilascio sulla posizione di memoria.
memory_order_acq_rel Combina memory_order_acquire e memory_order_release.
memory_order_seq_cst Combina memory_order_acquire e memory_order_release. Gli accessi alla memoria contrassegnati come memory_order_seq_cst devono essere coerenti sequenzialmente.

Vedi anche

<atomic>