Acquire and Release Fences

This lesson gives an overview of acquire and release fences used in C++ as memory barriers.

The most obvious difference between acquire and release fences and atomics with acquire-release semantics is that fences need no atomics. There is also a more subtle difference: the acquire and release fences are more heavyweight.

Atomic Operations vs Fences

For the sake of simplicity, I will now refer to acquire operations when I use fences or atomic operations with ...