Método ICorDebugProcess5::EnumerateHeap
Obtém um enumerador para objetos no monte gerenciado.
Sintaxe
HRESULT EnumerateHeap(
[out] ICorDebugHeapEnum **ppObjects
);
Parâmetros
ppObject
[fora] Um ponteiro para o endereço de um objeto de interface ICorDebugHeapEnum que é um enumerador para os objetos que residem no heap gerenciado.
Comentários
Antes de chamar o ICorDebugProcess5::EnumerateHeap
método, você deve chamar o método ICorDebugProcess5::GetGCHeapInformation e examinar o valor do areGCStructuresValid
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
retornam E_FAIL
se você anexar muito cedo no tempo de vida do processo, antes que a memória do 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 COR_HEAPOBJECT instâncias que fornecem informações sobre todos os objetos. A coleção também pode incluir COR_HEAPOBJECT instâncias que fornecem informações sobre objetos que não estão raizizados por nenhum objeto, mas que ainda não foram coletados pelo coletor de lixo.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: disponíveis desde 4.5