Senior
Cos'è il blocco pessimista?
sobes.tech AI
Risposta dell'AI
Il blocco pessimista è un approccio alla gestione dell'accesso concorrente ai dati, in cui la risorsa viene bloccata immediatamente all'inizio dell'operazione per prevenire conflitti. Cioè, quando una transazione vuole modificare i dati, acquisisce un blocco, e altre transazioni attendono che il blocco venga rilasciato.
In Go, questo può essere implementato usando mutex (sync.Mutex), che bloccano l'accesso ai dati condivisi:
var mu sync.Mutex
func updateData() {
mu.Lock() // blocco pessimista
defer mu.Unlock()
// sezione critica
}
Questo approccio garantisce che solo una goroutine possa modificare i dati alla volta, ma può ridurre il parallelismo e causare blocchi.