enum MemoryOrder
Description
Values
Relaxed = 0
No memory operation ordering constraints
Acquire = 1
Ensures that all subsequent memory operations in the same thread are not reordered before it
Release = 2
Ensures that all prior memory operations in the same thread are not reordered after it
AcquireRelease = 3
Combines both acquire and release semantics
SeqCst = 4
Provides the strongest ordering: total order exists between all SeqCst operations