Udostępnij przez


<atomic>, wyliczenia

wyliczenie memory_order

Dostarcza nazwy symboliczne operacji synchronizacji w lokalizacjach pamięci. Te operacje wpływają na sposób, w jaki przypisania w jednym wątku stają się widoczne w innym.

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;

Elementy członkowskie wyliczenia

Nazwa/nazwisko opis
memory_order_relaxed Nie jest wymagane zamawianie.
memory_order_consume Operacja ładowania działa jako operacja zużywania w lokalizacji pamięci.
memory_order_acquire Operacja ładowania działa jako operacja nabycia w lokalizacji pamięci.
memory_order_release Operacja magazynu działa jako operacja wydania w lokalizacji pamięci.
memory_order_acq_rel Łączy memory_order_acquire i memory_order_release.
memory_order_seq_cst Łączy memory_order_acquire i memory_order_release. Dostęp do pamięci oznaczony jako memory_order_seq_cst musi być sekwencyjnie spójny.

Zobacz też

<atomic>