Monitor.PulseAll-Methode
Benachrichtigt alle wartenden Threads über eine Änderung am Zustand des Objekts.
Namespace: System.Threading
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared Sub PulseAll ( _
obj As Object _
)
'Usage
Dim obj As Object
Monitor.PulseAll(obj)
public static void PulseAll (
Object obj
)
public:
static void PulseAll (
Object^ obj
)
public static void PulseAll (
Object obj
)
public static function PulseAll (
obj : Object
)
Parameter
- obj
Das Objekt, das den Impuls sendet.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Der obj-Parameter ist NULL (Nothing in Visual Basic). |
|
Der aufrufende Thread besitzt keine Sperre für das angegebene Objekt. |
Hinweise
Der Thread, der gegenwärtig die Sperre für das angegebene Objekt besitzt, ruft diese Methode auf, um Signale an alle Threads zu senden, die auf die Sperre für das Objekt warten. Nach dem Senden des Signals werden die wartenden Threads in die Warteschlange für abgearbeitete Threads verschoben. Wenn der Thread, der PulseAll aufgerufen hat, die Sperre freigibt, erhält der nächste Thread in der Warteschlange für abgearbeitete Threads die Sperre.
Beachten Sie, dass ein synchronisiertes Objekt mehrere Verweise enthält, darunter ein Verweis auf den Thread, der gegenwärtig die Sperre besitzt, ein Verweis auf die Warteschlange mit den abgearbeiteten Threads, die die Sperre erhalten können, und ein Verweis auf die Warteschlange mit den abzuarbeitenden Threads, die auf die Benachrichtigung über eine Änderung des Objektzustands warten.
Die Pulse-Methode, die PulseAll-Methode und die Wait-Methode müssen aus einem synchronisierten Codeblock heraus aufgerufen werden.
In den Hinweisen zur Pulse-Methode wird erläutert, welche Auswirkungen das Aufrufen von Pulse hat, wenn keine Threads warten.
Verwenden Sie die Pulse-Methode, um ein Signal an einen einzelnen Thread zu senden.
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
Monitor-Klasse
Monitor-Member
System.Threading-Namespace
Thread