I’ve now seen it come up in a couple threads (one being mine), but does anyone have a nice summary of what each of the std.builtin.AtomicOrder
enumerations mean in practice? For those not familiar, this is the enumerated type used as an argument to builtins like:
For instance, trying the following:
@fence(std.builtin.AtomicOrder.monotonic);
Fails with the following error:
error: atomic ordering must be acquire or stricter
However I’m struggling to grasp what each enumeration actually means when used as an argument to @fence
?
This post is potentially a good candidate to get moved to Docs if some nice answers flow in