Mutex

Autor: Robert Simon
Erstelldatum: 21 Juni 2021
Aktualisierungsdatum: 14 Kann 2024
Anonim
GROUND LOOT ONLY Challenge in Warzone - NO LOADOUTS?!
Video: GROUND LOOT ONLY Challenge in Warzone - NO LOADOUTS?!

Inhalt

Definition - Was bedeutet Mutex?

Mutex in C # ist eine in der .NET Framework-Klassenbibliothek definierte Klasse, mit der die gleichzeitige Ausführung eines Codeblocks durch mehrere Threads verhindert werden kann, die in einem oder mehreren Prozessen ausgeführt werden.

Mutex wird als Synchronisationsprimitiv in Situationen verwendet, in denen eine Ressource von mehreren Threads gleichzeitig gemeinsam genutzt werden muss. Benannte Mutex-Objekte werden für die Synchronisation zwischen Prozessen verwendet, da mehrere Anwendungen auf dasselbe Mutex-Objekt zugreifen können.

Die Mutex-Klasse soll eine gemeinsam genutzte Ressource wie Speicher, Dateihandle oder Netzwerkverbindung vor dem gleichzeitigen Zugriff mehrerer Threads oder Prozesse schützen. Es wird in lock-Anweisungen verwendet, um einen serialisierten Zugriff auf Ressourcen bereitzustellen und den gegenseitigen Ausschluss innerhalb der kritischen Codeabschnitte sicherzustellen. Dies verhindert die unvorhersehbare Beschädigung von Daten, die auftreten kann, wenn keine Synchronisation stattfindet. Es wird häufig verwendet, um jeweils nach einer einzelnen Instanz einer Anwendung zu suchen.

Mutex ist eine abgekürzte Form von sich gegenseitig ausschließen.

Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt Mutex

Mutex ermöglicht mehreren Threads den Zugriff auf eine gemeinsam genutzte Ressource, sodass der zweite Thread, der einen Mutex erwerben muss, der bereits von einem anderen Thread erfasst wurde, warten muss, bis der erste Thread den Mutex freigibt. Es sollte darauf geachtet werden, dass ein Thread nicht versucht, einen bereits vorhandenen Mutex abzurufen, da dies zu einem Deadlock führen kann.

Beispielsweise kann ein Mutex verwendet werden, um exklusiven Zugriff auf eine Datei zu gewähren, die in einer Multithread-Umgebung gelesen oder geändert werden muss.

Die Mutex-Klasse verfügt über einen Konstruktor, mit dem Schlüsselparameter eines neuen Mutex-Objekts während seiner Initialisierung angegeben werden können, z. B. Name, Besitzinformationen und die Zugriffssteuerungssicherheit, die auf den genannten Mutex angewendet werden soll.

Während Lock-Anweisungen zum Synchronisieren von Threads innerhalb eines einzelnen Prozesses verwendet werden können, wird Mutex über Prozessgrenzen hinweg verwendet.

Da die Mutex-Klasse ein Wrapper für ein Win32-Konstrukt ist, sind Interop-Übergänge erforderlich, die die Leistung beeinträchtigen. Daher ist es keine gute Wahl, wenn es nicht aus Gründen wie der Synchronisierung über Prozessgrenzen hinweg erforderlich ist.
Diese Definition wurde in der con von C # geschrieben