Atomare Operationen
Operation, die als Einheit ausgeführt wird — entweder vollständig oder gar nicht. Entscheidend in nebenläufigen Systemen, um Data Races ohne Sperren zu vermeiden.
CPU-Unterstützung: LOCK XADD (x86), LDXR/STXR (ARM), cmpxchg (Compare-and-Swap). C++ std::atomic, Java AtomicInteger, Rust AtomicUsize, Go sync/atomic. Memory Ordering: sequentially consistent (Standard, am teuersten), acquire/release, relaxed. Lock-freie Datenstrukturen (Queue, Stack) basieren auf CAS-Schleifen. Wait-free ist strenger — jeder Thread macht in begrenzten Schritten Fortschritt. Notorisch schwer korrekt zu implementieren.