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
[fora] 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.
Comentários
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 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 tem a garantia de 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 determinado segmento, juntamente com a geração dos objetos nesse segmento.
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