Go দুটি পদ্ধতি অফার করে concurrency safety এর জন্য: channels ("যোগাযোগের মাধ্যমে মেমরি শেয়ার করুন") এবং sync প্যাকেজ (mutexes/locks দ্বারা সরাসরি শেয়ার করা মেমরি সুরক্ষিত করুন)। Go এর channel-প্রথম দর্শন সত্ত্বেও, sync primitives প্রায়ই শেয়ার করা অবস্থা সুরক্ষিত করার জন্য সহজ এবং আরও দক্ষ পছন্দ।
sync.Mutex — একটি লক দিয়ে শেয়ার করা অবস্থা সুরক্ষিত করুন
Counter {
mu sync.Mutex
count
}
Increment() {
c.mu.Lock()
c.mu.Unlock()
c.count++
}
