Junior — Middle
Este mutex un instrument de sincronizare a firelor?
sobes.tech AI
Răspuns de la AI
Da, mutex (excludere mutuală) este un instrument de sincronizare a firelor. În Go, este o structură sync.Mutex care permite limitarea accesului simultan la resursele comune, prevenind condițiile de cursă. Când un fir (goroutine) preia mutex-ul, altele care încearcă să-l preia sunt blocate până când acesta este eliberat.
Exemplu de utilizare a mutex-ului în Go:
var mu sync.Mutex
var counter int
func increment() {
mu.Lock() // preia mutex-ul
defer mu.Unlock() // eliberează mutex-ul
counter++
}