Enumeração de COR_PRF_GC_GENERATION
Identifica uma geração de libertação de lixo.
Syntax
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 | Description |
---|---|
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 na área dinâmica de objetos grandes. |
COR_PRF_GC_PINNED_OBJECT_HEAP |
O objeto é armazenado na área de dados de objetos afixados. |
Observações
O recoletor de lixo melhora o desempenho da gestão da memória ao dividir objetos em gerações com base na idade. O recoletor de lixo utiliza atualmente três gerações, numeradas 0, 1 e 2, e dois segmentos especiais de área dinâmica, um para objetos grandes e outro para objetos afixados.
Objetos cujo tamanho é maior do que um valor de limiar são armazenados na área dinâmica de objetos grandes. Os objetos afixados podem ser alocados à área de dados de objetos afixados para evitar o custo de desempenho de alocá-los nas áreas de dados normais. Outros objetos alocados começam a pertencer à geração 0. Todos os objetos que existem após a recolha de lixo ocorrer na geração 0 são promovidos para a geração 1. Os objetos que existem após a recolha de lixo ocorrem na geração 1 movem-se para a geração 2.
A utilização de gerações significa que o recoletor de lixo tem de trabalhar apenas com um subconjunto dos objetos alocados em qualquer altura.
A COR_PRF_GC_GENERATION
enumeração é utilizada pela estrutura COR_PRF_GC_GENERATION_RANGE .
Requisitos
Plataformas: Veja Requisitos do Sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
.NET Framework Versões: Disponível desde 2.0