Partilhar via


Método ICorDebugHeapValue3::GetMonitorEventWaitList

Fornece uma lista ordenada de threads que estão enfileirados no evento associado a um bloqueio de monitor.

Sintaxe

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

Parâmetros

ppThreadEnum [saídas] O enumerador ICorDebugThreadEnum que fornece a lista ordenada de threads.

Devolver Valor

Esse método retorna os seguintes HRESULTs específicos, bem como erros HRESULT que indicam falha do método.

HRESULTADO Description
S_OK A lista não está vazia.
S_FALSE A lista está vazia.

Exceções

Observações

O primeiro thread da lista é o primeiro thread que é liberado pela próxima chamada para Monitor.Pulse(Object). O próximo tópico da lista é lançado na chamada a seguir, e assim por diante.

Se a lista não estiver vazia, esse método retornará S_OK. Se a lista estiver vazia, o método retornará S_FALSE; Neste caso, a enumeração ainda é válida, embora esteja vazia.

Em ambos os casos, a interface de enumeração é utilizável apenas durante a duração do estado sincronizado atual. No entanto, as interfaces do thread dispensadas dele são válidas até que o thread saia.

Se ppThreadEnum não for um ponteiro válido, o resultado será indefinido.

Se ocorrer um erro tal que não seja possível determinar quais, se houver, threads estão aguardando o monitor, o método retorna um HRESULT que indica falha.

Requisitos

Plataformas: Consulte Requisitos do sistema.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

Versões do .NET Framework: Disponível desde 4

Consulte também