Atomic Operation
Eine atomare Operation wird unteilbar ausgeführt, ist für nebenläufige Beobachter sichtbar und nicht unterbrechbar, wodurch einfache Nebenläufigkeitssicherheit ohne Sperren erreicht wird.
Zweck
Ein sperrenfreies Nebenläufigkeitsprimitiv, leichter als Sperren, das zur Implementierung von Zählern und Flags verwendet wird.
Mechanismus
Die Hardware stellt das CAS-Primitiv (Compare-and-Swap) bereit: ein atomarer Vergleich und Austausch. Darauf aufbauend folgen atomare Inkrement-, Dekrement- und Flag-Operationen. Die Speicherreihenfolge steuert die Sichtbarkeit (acquire/release/seq_cst). Günstiger als Sperren, aber nur für einfache Operationen geeignet.
Anwendungsfälle
- Sperrenfreie Nebenläufigkeit
- Zähler
- CAS