Sobes.tech
Senior

Šta je pesimistička blokada?

sobes.tech АИ

Одговор од АИ

Pesimističko zaključavanje je pristup upravljanju konkurentnim pristupom podacima, pri čemu se resurs odmah zaključava na početku operacije kako bi se sprečili konflikti. To znači da kada transakcija želi da izmeni podatke, ona dobija zaključavanje, i druge transakcije čekaju dok se zaključavanje ne oslobodi.

U Go jeziku, ovo se može implementirati pomoću mutexa (sync.Mutex), koji blokiraju pristup deljenim podacima:

var mu sync.Mutex

func updateData() {
    mu.Lock()   // pesimističko zaključavanje
    defer mu.Unlock()
    // kritična sekcija
}

Ovaj pristup garantuje da samo jedna gorutina može istovremeno menjati podatke, ali može dovesti do smanjenja paralelizma i blokada.