Senior
¿Qué es el bloqueo pesimista?
sobes.tech AI
Respuesta de la IA
El bloqueo pesimista es un enfoque para gestionar el acceso concurrente a los datos, en el que el recurso se bloquea inmediatamente al comenzar la operación para prevenir conflictos. Es decir, cuando una transacción quiere modificar datos, adquiere un bloqueo, y otras transacciones esperan hasta que el bloqueo se libere.
En Go, esto puede implementarse mediante mutexes (sync.Mutex), que bloquean el acceso a datos compartidos:
var mu sync.Mutex
func updateData() {
mu.Lock() // bloqueo pesimista
defer mu.Unlock()
// sección crítica
}
Este enfoque garantiza que solo una goroutine puede modificar los datos en un momento dado, pero puede reducir el paralelismo y causar bloqueos.