Senior
Čo je to pesimistické blokovanie?
sobes.tech AI
Odpoveď od AI
Pesimistické blokovanie je prístup k riadeniu súbežného prístupu k údajom, pri ktorom sa zdroj zablokuje ihneď na začiatku operácie, aby sa predišlo konfliktom. To znamená, že keď transakcia chce zmeniť údaje, získa zámok, a ostatné transakcie čakajú, kým sa zámok neuvoľní.
V Go to môže byť implementované pomocou mutexov (sync.Mutex), ktoré blokujú prístup ku zdieľaným údajom:
var mu sync.Mutex
func updateData() {
mu.Lock() // pesimistické blokovanie
defer mu.Unlock()
// kritická sekcia
}
Tento prístup zabezpečuje, že iba jedna gorutina môže meniť údaje naraz, ale môže viesť k zníženiu paralelizmu a blokovaniu.