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 denKonstruktor 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!