Go ले दुई प्रकारको समवर्तिता सुरक्षा अफर गर्दछ: channels ("मेमोरी साझा गरेर संचार गर्नुहोस्") र sync प्याकेज (mutexes/locks साझा मेमोरी सीधै सुरक्षित गर्न)। Go को channel-first दर्शनको बाबजुद, sync primitives अक्सर साझा अवस्था सुरक्षित गर्नको लागि सरल, अधिक प्रभावी विकल्प हो।
sync.Mutex — साझा अवस्था लक संग सुरक्षित गर्नुहोस्
Counter {
mu sync.Mutex
count
}
Increment() {
c.mu.Lock()
c.mu.Unlock()
c.count++
}
