Partilhar via


Método ICorDebugProcess5::EnumerateHeapRegions

Obtém um enumerador para os intervalos de memória do heap gerenciado.

Sintaxe

HRESULT EnumerateHeapRegions(
   [out] ICorDebugHeapSegmentEnum **ppRegions
);

Parâmetros

ppRegions [saídas] Um ponteiro para o endereço de um objeto de interface ICorDebugHeapSegmentEnum que é um enumerador para os intervalos de memória em que os objetos residem no heap gerenciado.

Observações

Antes de chamar o ICorDebugProcess5::EnumerateHeapRegions 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, o ICorDebugProcess5::EnumerateHeapRegions método retorna E_FAIL se você anexar muito cedo no tempo de vida do processo, antes que as regiões de memória sejam criadas.

Esse método é garantido para enumerar todas as regiões de memória que podem conter objetos gerenciados, mas não garante que os objetos gerenciados realmente residam nessas regiões. O objeto de coleção ICorDebugHeapSegmentEnum pode incluir regiões de memória vazias ou reservadas.

O objeto de interface ICorDebugHeapSegmentEnum é um enumerador padrão derivado da interface ICorDebugEnum que permite enumerar objetos COR_SEGMENT . Cada objeto COR_SEGMENT fornece informações sobre o intervalo de memória de um segmento específico, juntamente com a geração dos objetos nesse segmento.

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

Consulte também