Junior — Middle
Turli iplar bir vaqtning o'zida bir xil xotira manziliga ta'sir qilishi mumkinmi?
sobes.tech AI
AIdan javob
Ha, Go'da turli goroutinlar (iplar) bir vaqtning o'zida bir xil xotira manziliga murojaat qilishi mumkin. Biroq, bu sinxronlashtirilmagan bo'lsa, raqobat sharoitlariga (race conditions) olib kelishi mumkin. Umumiy xotira bilan xavfsiz muloqot qilish uchun sinxronlash mexanizmlari, masalan, mutexlar (sync.Mutex), kanallar (chan) yoki sync/atomic paketidan atomik operatsiyalar qo'llaniladi.
Ushbu umumiy o'zgaruvchiga kirishni himoya qilish uchun mutexdan foydalanish misoli:
var mu sync.Mutex
var counter int
func increment() {
mu.Lock()
counter++
mu.Unlock()
}
Bunday chora-tadbirlar bo'lmasa, bir vaqtning o'zida kirish dasturining kutilmagan xatti-harakatlariga olib kelishi mumkin.