Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Supplies symbolic names for synchronization operations on memory locations. These operations affect how assignments in one thread become visible in another.
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;
Remarks
memory_order_relaxed |
No ordering required. |
memory_order_consume |
A load operation acts as a consume operation on the memory location. |
memory_order_acquire |
A load operation acts as an acquire operation on the memory location. |
memory_order_release |
A store operation acts as a release operation on the memory location. |
memory_order_acq_rel |
Combines memory_order_acquire and memory_order_release. |
memory_order_seq_cst |
Combines memory_order_acquire and memory_order_release. Memory accesses that are marked as memory_order_seq_cst must be sequentially consistent. |
Requirements
Header: atomic
Namespace: std