Sobes.tech
Junior — Middle

À quoi sert le mécanisme d'exclusion mutuelle (Mutex) en programmation multithread ?

sobes.tech IA

Réponse de l'IA

Le mécanisme d'exclusion mutuelle (Mutex) en programmation multithread est utilisé pour empêcher plusieurs threads d'accéder simultanément à des ressources partagées ou à des sections critiques du code. Cela permet d'éviter les conditions de course, la corruption des données et garantit le bon fonctionnement du programme.

En Go, on utilise souvent sync.Mutex pour cela :

var mu sync.Mutex
var counter int

func increment() {
    mu.Lock()           // verrouillage du mutex
    counter++           // section critique
    mu.Unlock()         // déverrouillage du mutex
}

Ainsi, un seul thread peut exécuter le code entre Lock et Unlock à la fois.