Compartilhar 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 [out] Um ponteiro para o endereço de um objeto de interface ICorDebugHeapSegmentEnum que é um enumerador para os intervalos de memória nos quais 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 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::EnumerateHeapRegions método retornará 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 COR_SEGMENT objetos. 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.

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