Skip to main content

Wat is een mutex?

Een wederzijds uitsluitingsobject, of mutex, is een object dat is gemaakt voor gebruik in computerprogramma's.De essentiële functie van mutex is om het mogelijk te maken voor een meervoudige programmadhread om gebruik te maken van een enkele bron.Over het algemeen is de functionaliteit van wederzijdse uitsluitingsobjecten om dit gebruik van een enkele bron mogelijk te maken door een omgeving te creëren waarin de toegang tot de bron voortdurend heen en weer wordt geleid tussen de verschillende aspecten van het programma.

Het proces van het activeren en het maken van een mutex vindt plaats wanneer de computerprogramma -applicatie wordt geopend.In wezen zal het programma de mutex maken en relateren aan een specifieke bron die nodig is voor de efficiënte functie van het open programma.Naarmate de bronnen worden opgeroepen, zal het besturingssysteem een unieke naam aan de mutex toewijzen en deze gebruiken om het proces te identificeren zolang het programma open blijft.

Zodra de mutex is geactiveerd en benoemd voor de sessie, kan elke andere thread van het programma die deze bron vereist toegang hebben, hoewel de bron al actief wordt gebruikt door een andere thread.Door de behoefte aan de bron aan te geven, begint de mutex -functie de toegang van de bron heen en weer tussen de threads te wisselen.Voor de eindgebruiker is dit proces transparant.Voor alle praktische bedoelingen en doeleinden lijkt het erop dat twee gebruikers of twee threads ons tegelijkertijd van dezelfde bron maken.

Hoewel de snelheid van de overdracht van toegang zo snel is dat deze niet eens merkbaar is voor de eindgebruiker, moet worden opgemerkt dat wanneer een bron in gebruik is, deze effectief wordt vergrendeld aan de ene thread in de reeks.Een andere thread die het gebruik van de bron vereist, zal een verzoek indienen dat in een wachtrij gaat en daar blijft totdat de eerste thread is voltooid met het actieve gebruik.Op dat moment wordt de bron ontgrendeld en staat de MUTEX -functie de volgende thread toe in de wachtrij actieve toegang.Als een derde thread actief is en de bron nodig heeft, zal Mutex deze thread ook in de wachtrij zetten en op een roterende basis verlenen.