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