Dela via


COR_PRF_GC_GENERATION uppräkning

Identifierar en generering av skräpinsamling.

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;  

Medlemmar

Medlem Description
COR_PRF_GC_GEN_0 Objektet lagras som generation 0.
COR_PRF_GC_GEN_1 Objektet lagras som generation 1.
COR_PRF_GC_GEN_2 Objektet lagras som generation 2.
COR_PRF_GC_LARGE_OBJECT_HEAP Objektet lagras i heapen för stora objekt.
COR_PRF_GC_PINNED_OBJECT_HEAP Objektet lagras i heapen pinned-object.

Kommentarer

Skräpinsamlaren förbättrar prestanda för minneshantering genom att dela upp objekt i generationer baserat på ålder. Skräpinsamlaren använder för närvarande tre generationer, numrerade 0, 1 och 2, och två speciella heapsegment, ett för stora objekt och ett för fästa objekt.

Objekt vars storlek är större än ett tröskelvärde lagras i heapen för stora objekt. Fästa objekt kan allokeras till den fästa objekt-heapen för att undvika prestandakostnaden för att allokera dem på de normala heapsna. Andra allokerade objekt börjar tillhöra generation 0. Alla objekt som finns efter skräpinsamling sker i generation 0 befordras till generation 1. Objekt som finns efter att skräpinsamling inträffar i generation 1 flyttas till generation 2.

Användningen av generationer innebär att skräpinsamlaren bara måste arbeta med en delmängd av de allokerade objekten samtidigt.

Uppräkningen COR_PRF_GC_GENERATION används av COR_PRF_GC_GENERATION_RANGE struktur.

Krav

Plattformar: Se Systemkrav.

Huvudet: CorProf.idl, CorProf.h

Bibliotek: CorGuids.lib

.NET Framework versioner: Tillgänglig sedan 2.0

Se även