Método ICorDebugHeapValue3::GetMonitorEventWaitList
Fornece uma lista ordenada de threads enfileirados no evento associado a um bloqueio de monitor.
Sintaxe
HRESULT GetMonitorEventWaitList (
[out] ICorDebugThreadEnum **ppThreadEnum
);
Parâmetros
ppThreadEnum
[fora] O enumerador ICorDebugThreadEnum que fornece a lista ordenada de threads.
Valor de retorno
Esse método retorna os seguintes HRESULTs específicos, bem como erros HRESULT que indicam falha de método.
HRESULT | Descrição |
---|---|
S_OK | A lista não está vazia. |
S_FALSE | A lista está vazia. |
Exceções
Comentários
O primeiro thread da lista é o primeiro thread lançado pela próxima chamada para Monitor.Pulse(Object). O próximo thread na 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; nesse caso, a enumeração ainda é válida, embora esteja vazia.
Em ambos os casos, a interface de enumeração é utilizável apenas pela duração do estado sincronizado atual. No entanto, as interfaces do thread dispensadas dele são válidas até que o thread seja encerrado.
Se ppThreadEnum
não for um ponteiro válido, o resultado será indefinido.
Se ocorrer um erro de modo que não seja possível determinar quais threads estão aguardando o monitor, o método retorna um HRESULT que indica falha.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: disponíveis desde 4