.NET çalışma zamanı çöp toplama olayları
Bu makalede açıklanan olaylar, çöp toplamayla ilgili bilgileri toplar. Bunlar, çöp toplama işleminin kaç kez gerçekleştirildiğini, çöp toplama sırasında ne kadar belleğin boşaltıldığını vb. belirleme dahil olmak üzere tanılama ve hata ayıklamaya yardımcı olur. Bu olayların tanılama amacıyla nasıl kullanılacağı hakkında daha fazla bilgi için bkz . .NET uygulamalarını günlüğe kaydetme ve izleme
GCStart_V2 Olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCStart_V1 |
1 | Çöp toplama başlatıldı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Count |
win:UInt32 |
n. çöp toplama. |
Depth |
win:UInt32 |
Toplanan nesil. |
Reason |
win:UInt32 |
Çöp toplamanın neden tetiklendiği:0x0 - Küçük nesne yığını ayırma.0x1 -Bağlı.0x2 - Düşük bellek.0x3 -Boş.0x4 - Büyük nesne yığını ayırma.0x5 - Boş alan (küçük nesne yığını için).0x6 - Yer yetersiz (büyük nesne yığını için).0x7 - Engelleyici olarak tetiklenmiş ancak zorlamalı değildir. |
Type |
win:UInt32 |
0x0 - Engelleme çöp toplama arka plan çöp toplama dışında oluştu.0x1 - Arka plan çöp toplama.0x2 - Arka plan atık toplama sırasında atık toplamayı engelleme oluştu. |
ClrInstanceID |
win:UInt16 | CoreCLR örneği için benzersiz kimlik. |
GCEnd_V1 Olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCEnd_V1 |
2 | Çöp toplama sona erdi. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Count |
win:UInt32 |
n. çöp toplama. |
Depth |
win:UInt32 |
Toplanan nesil. |
ClrInstanceID |
win:UInt16 | CoreCLR örneği için benzersiz kimlik. |
GCHeapStats_V2 Olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kimliği | Açıklama |
---|---|---|
GCHeapStats_V2 |
4 | Her çöp toplama işleminin sonundaki yığın istatistiklerini gösterir. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
GenerationSize0 |
win:UInt64 |
0. nesil belleğin bayt cinsinden boyutu. |
TotalPromotedSize0 |
win:UInt64 |
0. nesilden 1. nesile yükseltilen bayt sayısı. |
GenerationSize1 |
win:UInt64 |
1. nesil belleğin bayt cinsinden boyutu. |
TotalPromotedSize1 |
win:UInt64 |
1. nesilden 2. nesile yükseltilen bayt sayısı. |
GenerationSize2 |
win:UInt64 |
2. nesil belleğin bayt cinsinden boyutu. |
TotalPromotedSize2 |
win:UInt64 |
Son koleksiyondan sonra 2. nesilde hayatta kalan bayt sayısı. |
GenerationSize3 |
win:UInt64 |
Büyük nesne yığınının bayt cinsinden boyutu. |
TotalPromotedSize3 |
win:UInt64 |
Son koleksiyondan sonra büyük nesne yığınında hayatta kalan bayt sayısı. |
FinalizationPromotedSize |
win:UInt64 |
Sonlandırmaya hazır nesnelerin bayt cinsinden toplam boyutu. |
FinalizationPromotedCount |
win:UInt64 |
Sonlandırma için hazır olan nesne sayısı. |
PinnedObjectCount |
win:UInt32 |
Sabitlenmiş (taşınamaz) nesnelerin sayısı. |
SinkBlockCount |
win:UInt32 |
Kullanılan eşitleme bloklarının sayısı. |
GCHandleCount |
win:UInt32 |
Kullanılan çöp toplama tutamaçlarının sayısı. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
GenerationSize4 |
win:UInt64 |
Sabitlenmiş nesne yığınının bayt cinsinden boyutu. |
TotalPromotedSize4 |
win:UInt64 |
Son koleksiyondan sonra sabitlenmiş nesne yığınında hayatta kalan bayt sayısı. |
GCCreateSegment_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCCreateSegment_V1 |
5 | Yeni bir çöp toplama kesimi oluşturuldu. Ayrıca, zaten çalışmakta olan bir işlemde izleme etkinleştirildiğinde, bu olay var olan her kesim için oluşturulur. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Address |
win:UInt64 |
Segmentin adresi. |
Size |
win:UInt64 |
Segmentin boyutu. |
Type |
win:UInt32 |
0x0 - Küçük nesne yığını. 0x1 - Büyük nesne yığını. 0x2 - Salt okunur yığın. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
Atık toplayıcı tarafından ayrılan kesimlerin boyutunun uygulamaya özgü olduğunu ve düzenli güncelleştirmeler de dahil olmak üzere herhangi bir zamanda değiştirilebilir olduğunu unutmayın. Uygulamanız hiçbir zaman belirli bir segment boyutuyla ilgili varsayımlarda bulunmamalı veya segment ayırmaları için kullanılabilir bellek miktarını yapılandırmaya çalışmamalıdır.
GCFreeSegment_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCFreeSegment_V1 |
6 | Bir çöp toplama kesimi serbest bırakıldı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Address |
win:UInt64 |
Segmentin adresi. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
GCRestartEEBegin_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCRestartEEBegin_V1 |
7 | Ortak dil çalışma zamanı askıya alma işleminin yeniden başlatılması başladı. |
Bu olay herhangi bir olay verisi içermiyor.
GCRestartEEEnd_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kimliği | Yükseltildiğinde |
---|---|---|
GCRestartEEEnd_V1 |
3 | Ortak dil çalışma zamanı askıya alma işleminin sürdürülmesi sona erdi. |
Bu olay herhangi bir olay verisi içermiyor.
GCSuspendEEEnd_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCSuspendEEEnd_V1 |
8 | Atık toplama için yürütme altyapısının askıya alınması sona erdi. |
Bu olay herhangi bir olay verisi içermiyor.
GCSuspendEEBegin_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCSuspendEEBegin_V1 |
9 | Atık toplama için yürütme altyapısının askıya alınma başlangıcı. |
Alan adı | Veri türü | Açıklama |
---|---|---|
Count |
win:UInt32 |
n. çöp toplama. |
Reason |
win:UInt32 |
EE'nin askıya alınma nedeni.0x0 : Diğer için Askıya Al0x1 : GC için askıya alın.0x2 : AppDomain kapatma için askıya alın.0x3 : Kod sunumu için askıya alın.0x4 : Kapatma için askıya alın.0x5 : Hata ayıklayıcı için askıya alın.0x6 : GC Hazırlığı için askıya alın.0x7 : Hata ayıklayıcı taraması için askıya alma |
GCAllocationTick_V3 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Ayrıntılı (5) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCAllocationTick_V3 |
10 | Her seferinde yaklaşık 100 KB ayrılır. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
AllocationAmount |
win:UInt32 |
Bayt cinsinden ayırma boyutu. Bu değer, ULONG uzunluğundan (4.294.967.295 bayt) küçük ayırmalar için doğrudur. Ayırma daha büyükse, bu alan kesilmiş bir değer içerir. Çok büyük ayırmalar için kullanın AllocationAmount64 . |
AllocationKind |
win:UInt32 |
0x0 - Küçük nesne ayırma (ayırma küçük nesne yığınındadır).0x1 - Büyük nesne ayırma (ayırma büyük nesne yığınındadır). |
AllocationAmount64 |
win:UInt64 |
Bayt cinsinden ayırma boyutu. Bu değer çok büyük ayırmalar için doğrudur. |
TypeId |
win:Pointer |
MethodTable'ın adresi. Bu olay sırasında ayrılan çeşitli nesne türleri olduğunda, bu, ayrılan son nesneye (100 KB eşiğinin aşılmasına neden olan nesne) karşılık gelen MethodTable'ın adresidir. |
TypeName |
win:UnicodeString |
Ayrılan türün adı. Bu olay sırasında ayrılan çeşitli nesne türleri olduğunda, bu ayrılan son nesnenin türüdür (100 KB eşiğinin aşılmasına neden olan nesne). |
HeapIndex |
win:UInt32 |
Nesnenin ayrıldığı yığın. İş istasyonu çöp toplama ile çalışırken bu değer 0 (sıfır) olur. |
Address |
win:Pointer |
Son ayrılan nesnenin adresi. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
GCCreateConcurrentThread_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
ThreadingKeyword (0x10000) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCCreateConcurrentThread_V1 |
11 | Eşzamanlı çöp toplama iş parçacığı oluşturuldu. |
Bu olay herhangi bir olay verisi içermiyor.
GCTerminateConcurrentThread_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
ThreadingKeyword (0x10000) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCTerminateConcurrentThread_V1 |
12 | Eşzamanlı çöp toplama iş parçacığı sonlandırıldı. |
Bu olay herhangi bir olay verisi içermiyor.
GCFinalizersBegin_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCFinalizersBegin_V1 |
14 | Sonlandırıcıları çalıştırmanın başlangıcı. |
Bu olay herhangi bir olay verisi içermiyor.
GCFinalizersEnd_V1 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCFinalizersEnd_V1 |
13 | Sonlandırıcıları çalıştırmanın sonu. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Count |
win:UInt32 |
Çalıştırılan sonlandırıcıların sayısı. |
ClrInstanceID |
win:UInt16 | CLR veya CoreCLR örneği için benzersiz kimlik. |
SetGCHandle olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCHandleKeyword (0x2) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
SetGCHandle |
30 | GC Tanıtıcısı ayarlandı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
HandleID |
win:Pointer |
Ayrılan tanıtıcının adresi. |
ObjectID |
win:Pointer |
Tanıtıcısı oluşturulan nesnenin adresi. |
Kind |
win:UInt32 |
Ayarlanan GC tutamacının türü. 0x0 : WeakShort 0x1 : WeakLong 0x2 :Güçlü 0x3 :Sabitlenmiş 0x4 :Değişken0x5 : RefCounted 0x6 :Bağımlı0x7 : AsyncPinned0x8 : SizedRef |
Generation |
win:UInt32 |
Tutamacı oluşturulan nesnenin nesli. |
AppDomainID |
win:UInt64 |
AppDomain Kimliği. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
DestroyGCHandle olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCHandleKeyword (0x2) |
Bilgilendirme (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
DestroyGCHandle |
31 | GC Tanıtıcısı yok edilir. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
HandleID |
win:Pointer |
Yok edilen tanıtıcının adresi. |
ClrInstanceID |
win:UInt16 | CoreCLR örneği için benzersiz kimlik. |
PinObjectAtGCTime olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Ayrıntılı (5) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
PinObjectAtGCTime |
33 | Gc sırasında bir nesne sabitlendi. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
HandleID |
win:Pointer |
Tanıtıcının adresi. |
ObjectID |
win:Pointer |
Sabitlenmiş nesnenin adresi. |
ObjectSize |
win:UInt64 |
Sabitlenmiş nesnenin boyutu. |
TypeName |
win:UnicodeString |
Sabitlenmiş nesne türünün adı. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
GCTriggered olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Ayrıntılı (5) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCTriggered |
35 | Gc tetiklendi. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Reason |
win:UInt32 |
GC'nin tetiklenmiş olmasının nedeni.0x0 : AllocSmall0x1 :Bağlı 0x2 : LowMemory 0x3 :Boş 0x4 : AllocLarge 0x5 : OutOfSpaceSmallObjectHeap 0x6 : OutOfSpaceLargeObjectHeap 0x7 :InducedNoForce 0x8 :Stres 0x9 : InducedLowMemory |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
IncreaseMemoryPressure olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgi (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
IncreaseMemoryPressure |
200 | Bellek baskısı artırıldı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan Adı | Veri türü | Açıklama |
---|---|---|
ClrInstanceID |
win:UInt16 | CoreCLR örneği için benzersiz kimlik. |
DecreaseMemoryPressure olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgi (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
DecreaseMemoryPressure |
201 | Bellek baskısı azaldı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan Adı | Veri türü | Açıklama |
---|---|---|
BytesFreed |
win:UInt32 |
Serbest bayt sayısı. |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |
GCMarkWithType olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Bilgi (4) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCMarkWithType |
202 | GC işareti aşamasında bir GC kökü işaretlendi. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan Adı | Veri türü | Açıklama |
---|---|---|
HeapNum |
win:UInt32 |
Yığın numarası. |
ClrInstanceID |
win:UInt16 | CoreCLR örneği için benzersiz kimlik. |
Type |
win:UInt32 |
GC kök türü.0x0 :Yığın0x1 :Sonlandırıcıyı0x2 :Işlemek0x3 :Eski0x4 : SizedRef0x5 :Taşma |
Bytes |
win:UInt64 |
İşaretlenen bayt sayısı. |
GCJoin_V2 olayı
Aşağıdaki tabloda anahtar sözcük ve düzey gösterilmektedir:
Olayı oluşturmak için anahtar sözcük | Level |
---|---|
GCKeyword (0x1) |
Ayrıntılı (5) |
Aşağıdaki tabloda olay bilgileri gösterilmektedir:
Etkinlik | Olay Kodu | Yükseltildiğinde |
---|---|---|
GCJoin_V2 |
203 | Bir GC iş parçacığı katıldı. |
Aşağıdaki tabloda olay verileri gösterilmektedir:
Alan adı | Veri türü | Açıklama |
---|---|---|
Heap |
win:UInt32 |
Yığın numarası |
JoinTime |
win:UInt32 |
Bu olayın bir birleştirmenin başlangıcında mı yoksa birleştirmenin sonunda mı tetiklenip tetiklenmediğini gösterir (0x0 birleştirme başlangıcı için, 0x1 birleştirme sonu için) |
JoinType |
win:UInt32 |
Birleştirme türü. 0x0 : Son Katılma0x1 :Katılın 0x2 :Yeni -den başlatın 0x3 : İlk Ters Birleştirme0x4 : Ters Birleştirme |
ClrInstanceID |
win:UInt16 |
CoreCLR örneği için benzersiz kimlik. |