Compartilhar via


Método ICorDebugProcess5::EnumerateHeap

Obtém um enumerador para os objetos no heap gerenciado.

Sintaxe

HRESULT EnumerateHeap(
    [out] ICorDebugHeapEnum **ppObjects
);

Parâmetros

ppObject [out] 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 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, o ICorDebugProcess5::EnumerateHeap retorno será E_FAIL retornado 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 COR_HEAPOBJECT objetos. Esse método preenche o objeto da coleção ICorDebugHeapEnum com instâncias COR_HEAPOBJECT 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 têm raiz por nenhum objeto, mas ainda não foram coletados pelo coletor de lixo.

Requirements

Plataformas: Consulte sistemas operacionais com suporte do .NET.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

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

Consulte também