Sobes.tech
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++
}