Atomic operation अविभाज्यपणे पूर्ण होते — इतर कोणत्याही thread ला अर्धवट झालेली स्थिती दिसत नाही; memory visibility म्हणजे एका thread चे writes दुसऱ्याला दिसतात की नाही; memory barriers ordering लागू करतात जेणेकरून ते writes दृश्यमान होतात. Locks ही एकमेव चिंता नाही — memory model आहे.
Atomicity
एक atomic op (उदा. fetch_add, compare-and-swap) एका अविभाज्य पावलाप्रमाणे execute होते, त्यामुळे कोणतीही race ती विभाजित करत नाही. Hardware आणि language पूर्ण lock शिवाय counters आणि flags साठी atomics पुरवतात.
();
counter.incrementAndGet();
