Junior — Middle
Para que serve o mecanismo de exclusão mútua (Mutex) na programação multithread?
sobes.tech IA
Resposta da IA
O mecanismo de exclusão mútua (Mutex) na programação multithread é usado para evitar o acesso simultâneo de vários threads a recursos compartilhados ou seções críticas do código. Isso ajuda a evitar condições de corrida, corrupção de dados e garante a correção do funcionamento do programa.
Em Go, para isso, frequentemente se usa sync.Mutex:
var mu sync.Mutex
var counter int
func increment() {
mu.Lock() // bloqueio do mutex
counter++ // seção crítica
mu.Unlock() // desbloqueio do mutex
}
Dessa forma, apenas um thread pode executar o código entre Lock e Unlock ao mesmo tempo.