Skip to main content

Was ist ein Mutex?

Ein gegenseitiges Ausschlussobjekt oder Mutex ist ein Objekt, das für die Verwendung in Computerprogrammen erstellt wurde.Die wesentliche Funktion von Mutex besteht darin, es für einen Mehrfachprogramm -Thread zu ermöglichen, eine einzelne Ressource zu verwenden.Im Allgemeinen besteht die Funktionalität von gegenseitigen Ausschlussobjekten darin, diese Verwendung einer einzelnen Ressource durch Schaffung einer Umgebung zuzulassen, in der der Zugriff auf die Ressource kontinuierlich zwischen den verschiedenen Aspekten des Programms hin und her übergeben wird.

Der Prozess des Aktivierens und Erstellens eines Mutex erfolgt, wenn die Anwendung des Computerprogramms geöffnet wird.Im Wesentlichen erstellt das Programm den Mutex und bezieht ihn auf eine bestimmte Ressource, die für die effiziente Funktion des offenen Programms benötigt wird.Wenn die Ressourcen hervorgerufen werden, weist das Betriebssystem dem Mutex einen eindeutigen Namen zu und identifiziert ihn, um den Prozess so lange zu identifizieren, wie das Programm offen bleibt.

Sobald der Mutex für die Sitzung aktiviert und benannt ist, kann jeder andere Thread des Programms, für den diese Ressource erforderlich ist, Zugriff haben, obwohl die Ressource bereits über einen anderen Thread aktiv verwendet wird.Durch die Angabe eines Bedarfs an der Ressource wird die MUTEX -Funktion den alternativen Zugriff der Ressource zwischen den Threads hin und her wechseln.Für den Endbenutzer ist dieser Prozess transparent.Für alle praktischen Absichten und Zwecke scheint es, dass zwei Benutzer oder zwei Themen gleichzeitig dieselbe Ressource machen.

Während die Geschwindigkeit des Zugriffsübertragers so schnell ist, dass es für den Endbenutzer nicht einmal merkwürdig ist, sollte beachtet werden, dass sie bei Verwendung einer Ressource effektiv auf den einen Thread in der Sequenz gesperrt ist.Ein weiterer Thread, der die Verwendung der Ressource erfordert, wird eine Anfrage ausstellen, die in eine Warteschlange eingeht und dort bleibt, bis der erste Thread mit der aktiven Verwendung beendet ist.Zu diesem Zeitpunkt wird die Ressource freigeschaltet und die MUTEX -Funktion ermöglicht den nächsten Thread im aktiven Warteschlangenzugriff.Wenn ein dritter Thread aktiv ist und die Ressource benötigt, wird Mutex diesen Thread auch in die Warteschlange ausgerichtet und auf rotierende Basis zugreifen.