Método ICorDebugProcess5::EnumerateHeap
Obtém um enumerador para os objetos no heap gerenciado.
Sintaxe
HRESULT EnumerateHeap(
[out] ICorDebugHeapEnum **ppObjects
);
Parâmetros
ppObject
[saídas] Um ponteiro para o endereço de um objeto de interface ICorDebugHeapEnum que é um enumerador para os objetos que residem no heap gerenciado.
Observações
Antes de chamar o ICorDebugProcess5::EnumerateHeap
método, você deve chamar o método ICorDebugProcess5::GetGCHeapInformation e examinar o areGCStructuresValid
valor do campo do objeto COR_HEAPINFO retornado para garantir que o heap de coleta de lixo em seu estado atual seja enumerável. Além disso, os ICorDebugProcess5::EnumerateHeap
retornos E_FAIL
se você anexar muito cedo no tempo de vida do processo, antes que a memória para o heap gerenciado seja alocada.
O objeto de interface ICorDebugHeapEnum é um enumerador padrão derivado da interface ICorDebugEnum que permite enumerar objetos COR_HEAPOBJECT . Esse método preenche o objeto de coleção ICorDebugHeapEnum com instâncias de COR_HEAPOBJECT que fornecem informações sobre todos os objetos. A coleta também pode incluir instâncias COR_HEAPOBJECT que fornecem informações sobre objetos que não estão enraizados por nenhum objeto, mas ainda não foram coletados pelo coletor de lixo.
Requisitos
Plataformas: Consulte Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: Disponível desde a versão 4.5