Enumeração COR_PRF_GC_GENERATION
Identifica uma geração de coleta de lixo.
Sintaxe
typedef enum {
COR_PRF_GC_GEN_0 = 0,
COR_PRF_GC_GEN_1 = 1,
COR_PRF_GC_GEN_2 = 2,
COR_PRF_GC_LARGE_OBJECT_HEAP = 3,
COR_PRF_GC_PINNED_OBJECT_HEAP= 4
} COR_PRF_GC_GENERATION;
Membros
Membro | DESCRIÇÃO |
---|---|
COR_PRF_GC_GEN_0 |
O objeto é armazenado como geração 0. |
COR_PRF_GC_GEN_1 |
O objeto é armazenado como geração 1. |
COR_PRF_GC_GEN_2 |
O objeto é armazenado como geração 2. |
COR_PRF_GC_LARGE_OBJECT_HEAP |
O objeto é armazenado no heap de objetos grandes. |
COR_PRF_GC_PINNED_OBJECT_HEAP |
O objeto é armazenado no heap de objetos grandes. |
Comentários
O coletor de lixo melhora o desempenho do gerenciamento de memória dividindo objetos em gerações com base na idade. O coletor de lixo atualmente usa três gerações, numeradas 0, 1 e 2, e dois segmentos de heap especiais, um para objetos grandes e outro para objetos fixados.
Objetos cujo tamanho é maior que um valor limite são armazenados no heap de objetos grandes. Os objetos fixados podem ser alocados ao heap do objeto fixado para evitar o custo de desempenho de alocá-los nos heaps normais. Outros objetos alocados começam pertencentes à geração 0. Todos os objetos que existem após a coleta de lixo ocorrer na geração 0 são promovidos para a geração 1. Objetos que existem após a coleta de lixo ocorrer na geração 1 são movidos para a geração 2.
O uso de gerações significa que o coletor de lixo precisa trabalhar apenas com um subconjunto dos objetos alocados a qualquer momento.
A COR_PRF_GC_GENERATION
enumeração é usada pela estrutura COR_PRF_GC_GENERATION_RANGE.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: disponíveis desde 2.0