Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung zur Verwendung von ManualResetEvent in C#

Ausführliche Erklärung zur Verwendung von ManualResetEvent in C#

黄舟
黄舟Original
2017-06-04 09:44:083202Durchsuche

In diesem Artikel wird hauptsächlich die Verwendung von ManuellNeuEinstellungEreignis im Detail vorgestellt, das einen gewissen Referenzwert hat

Das Beispiel in In diesem Artikel erfahren Sie, wie Sie ManualResetEvent als Referenz verwenden. Der spezifische Inhalt lautet wie folgt:

Demo:


2. Detaillierte Erklärung von ManualResetEvent

ManualResetEvent ermöglicht es Threads, durch Senden von Signalen miteinander zu kommunizieren. Typischerweise umfasst diese Kommunikation Aufgaben, die ein Thread abschließen muss, bevor andere Threads fortfahren können. Wenn ein Thread eine Aktivität startet (diese Aktivität muss abgeschlossen sein, bevor andere Threads gestartet werden können), ruft er Reset auf, um das ManualResetEvent in einen nicht terminierenden -Zustand

zu versetzen, und dieser Thread kann als Steuerung des ManualResetEvent betrachtet werden. Der Thread, der WaitOne bei ManualResetEvent aufruft, blockiert und wartet auf das Signal. Wenn der steuernde Thread seine Aktivität beendet, ruft er Set auf, um zu signalisieren, dass der wartende Thread fortfahren kann. und alle wartenden Threads freigeben. Sobald es beendet ist, bleibt ein ManualResetEvent beendet (d. h. der Thread, der WaitOne aufruft, kehrt sofort zurück und blockiert nicht), bis es manuell zurückgesetzt wird. Der Anfangszustand eines ManualResetEvents kann durch die Übergabe eines booleschen Werts an den

Konstruktor gesteuert werden, der wahr ist, wenn der Anfangszustand beendet wird, andernfalls falsch.

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zur Verwendung von ManualResetEvent in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn