En atomisk operation fuldføres udeleligt — ingen anden tråd ser en halvfærdig tilstand; memory visibility er, hvorvidt én tråds writes ses af en anden; memory barriers håndhæver rækkefølge, så de writes bliver synlige. Locks er ikke den eneste bekymring — memory-modellen er.
Atomicitet
En atomisk op (f.eks. fetch_add, compare-and-swap) udføres som ét udeleligt trin, så ingen race splitter den. Hardware og sprog stiller atomics til rådighed for tællere og flags uden en fuld lock.
();
counter.incrementAndGet();
