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