Compare-and-swap is a hardware instruction, and beyond that a desirable pattern for dealing with concurrent writes.
CMPXCHG
https://www.felixcloutier.com/x86/cmpxchg
https://lwn.net/Articles/847973/