जेव्हा अनेक threads data सामायिक करतात, तेव्हा त्यांच्या क्रिया एका बहु-टप्प्याच्या update च्या मध्येच interleave होऊ शकतात, ज्यामुळे race condition निर्माण होते — असा bug जिथे परिणाम अनिश्चित timing वर अवलंबून असतो. Synchronization म्हणजे सुरक्षित क्रम लादणाऱ्या साधनांचा संच.
समस्या: एक race condition
count++ atomic दिसते पण प्रत्यक्षात read-modify-write आहे:
