Freigeben über


ICorDebugHeapValue3::GetMonitorEventWaitList-Methode

Stellt eine sortierte Liste von Threads bereit, die für das Ereignis in die Warteschlange gestellt werden, das einer Monitorsperre zugeordnet ist.

Syntax

HRESULT GetMonitorEventWaitList (
    [out] ICorDebugThreadEnum **ppThreadEnum
);

Die 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 auf Methodenfehler hinweisen.

HRESULT Description
S_OK Die Liste ist nicht leer.
S_FALSE Die Liste ist leer.

Exceptions

Bemerkungen

Der erste Thread in der Liste ist der erste Thread, der vom nächsten Aufruf Monitor.Pulse(Object)freigegeben wird. Der nächste Thread in der Liste wird im 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 Aufzählung 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. Die Von ihr ausgegebenen Schnittstellen des Threads sind jedoch gültig, bis der Thread beendet wird.

Wenn ppThreadEnum es sich nicht um einen gültigen Zeiger handelt, wird das Ergebnis nicht definiert.

Wenn ein Fehler auftritt, der nicht bestimmt werden kann, welche Threads auf den Monitor warten, gibt die Methode ein HRESULT zurück, das einen Fehler angibt.

Anforderungen

Plattformen: Siehe .NET unterstützte Betriebssysteme.

Kopfball: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET-Versionen: Verfügbar seit .NET Framework 4.0