ICorDebugHeapValue3::GetMonitorEventWaitList-Methode
Stellt eine sortierte Liste von Threads in der Warteschlange für das Ereignis bereit, das einer Monitorsperre zugeordnet ist.
Syntax
HRESULT GetMonitorEventWaitList (
[out] ICorDebugThreadEnum **ppThreadEnum
);
Parameter
ppThreadEnum
[out] Der ICorDebugThreadEnum-Enumerator, der die sortierte Liste der Threads bereitstellt.
Rückgabewert
Diese Methode gibt die folgenden spezifischen HRESULTs sowie HRESULT-Fehler zurück, die Methodenfehler anzeigen.
HRESULT | BESCHREIBUNG |
---|---|
S_OK | Die Liste ist nicht leer. |
S_FALSE | Die Liste ist leer. |
Ausnahmen
Bemerkungen
Der erste Thread in der Liste ist der erste Thread, der durch den nächsten Aufruf von Monitor.Pulse(Object) freigegeben wird. Der nächste Thread in der Liste wird beim folgenden Aufruf freigegeben usw.
Wenn die Liste nicht leer ist, gibt diese Methode „S_OK“ zurück. Wenn die Liste leer ist, gibt die Methode „S_FALSE“ zurück. In diesem Fall ist die Enumeration weiterhin gültig, obwohl sie leer ist.
In beiden Fällen kann die Enumerationsschnittstelle nur für die Dauer des aktuellen synchronisierten Zustands verwendet werden. Allerdings sind die Schnittstellen des Threads, die von der Liste entfernt werden, gültig, bis der Thread beendet wird.
Wenn ppThreadEnum
kein gültiger Zeiger ist, ist das Ergebnis nicht definiert.
Wenn ein Fehler auftritt, sodass nicht ermittelt werden kann, ob und welche Threads auf den Monitor warten, gibt die Methode einen „HRESULT“ zurück, das einen Fehler anzeigt.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: CorDebug.idl, CorDebug.h
Bibliothek: CorGuids.lib
.NET Framework-Versionen: Seit Version 4 verfügbar