Junior — Middle
Do jaké kategorie multitaskingu patří mechanismy blokování využívající mutexy?
sobes.tech AI
Odpověď od AI
Zámky s použitím mutexů patří k kooperativní multitaskingu nebo k synchronizaci vláken v konkurenčním prostředí.
V kontextu Go a multitaskingu mutexy zajišťují vzájemné vyloučení (mutual exclusion), což umožňuje pouze jednomu vláknu (gorutině) současně přistupovat ke kritické sekci.
Nejde o předběžný (preemptive) multitasking, ale spíše o mechanismus synchronizace pro koordinaci práce paralelních úkolů, zabraňující závodům dat a zajišťující správnost.
Příklad použití mutexu v Go:
var mu sync.Mutex
var counter int
func increment() {
mu.Lock()
defer mu.Unlock()
counter++
}