Junior — Middle
Արդյոք mutex-ը սինխրոնիզացիայի գործիք է?
sobes.tech AI
Պատասխան AI-ից
Այո, mutex (միմյանց բացառումը) հարթակների սինխրոնիզացիայի գործիք է: Go-ում դա sync.Mutex կառուցվածքն է, որը թույլ է տալիս սահմանափակել համաժամանակյա մուտքը ընդհանուր ռեսուրսներին և կանխել մրցակցության պայմանները: Երբ մի հարթակ (goroutine) ստանում է mutex-ը, մյուսները, որոնք փորձում են ստանալ այն, բլոկվում են մինչև այն ազատ արձակվի:
Օրինակ՝ mutex-ի օգտագործումը Go-ում:
var mu sync.Mutex
var counter int
func increment() {
mu.Lock() // ստանալ mutex
defer mu.Unlock() // ազատել mutex
counter++
}