COR_PRF_GC_GENERATION — Wyliczenie
Identyfikuje generację odzyskiwania pamięci.
Składnia
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;
Elementy członkowskie
Członek | Opis |
---|---|
COR_PRF_GC_GEN_0 |
Obiekt jest przechowywany jako generacja 0. |
COR_PRF_GC_GEN_1 |
Obiekt jest przechowywany jako generacja 1. |
COR_PRF_GC_GEN_2 |
Obiekt jest przechowywany jako generacja 2. |
COR_PRF_GC_LARGE_OBJECT_HEAP |
Obiekt jest przechowywany w stercie dużego obiektu. |
COR_PRF_GC_PINNED_OBJECT_HEAP |
Obiekt jest przechowywany w stercie przypiętego obiektu. |
Uwagi
Moduł odśmiecania pamięci zwiększa wydajność zarządzania pamięcią, dzieląc obiekty na generacje na podstawie wieku. Moduł odśmiecania pamięci używa obecnie trzech generacji, numerowanych 0, 1 i 2 oraz dwóch specjalnych segmentów sterty, jeden dla dużych obiektów i jeden dla przypiętych obiektów.
Obiekty, których rozmiar jest większy niż wartość progowa, są przechowywane w stercie dużego obiektu. Przypięte obiekty można przydzielić do sterty przypiętego obiektu, aby uniknąć kosztów wydajności przydzielania ich na normalnych stertach. Inne przydzielone obiekty zaczynają należeć do generacji 0. Wszystkie obiekty istniejące po odśmiecaniu pamięci w generacji 0 są promowane do generacji 1. Obiekty, które istnieją po odśmiecaniu pamięci, są przenoszone do generacji 2.
Użycie generacji oznacza, że moduł odśmiecenia pamięci musi pracować tylko z podzbiorem przydzielonych obiektów w dowolnym momencie.
Wyliczenie COR_PRF_GC_GENERATION
jest używane przez strukturę COR_PRF_GC_GENERATION_RANGE .
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorProf.idl, CorProf.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od wersji 2.0