ETW-gebeurtenissen garbagecollection

Deze gebeurtenissen verzamelen informatie met betrekking tot garbagecollection. Ze helpen bij diagnostische gegevens en foutopsporing, waaronder het bepalen hoe vaak garbagecollection is uitgevoerd, hoeveel geheugen er is vrijgemaakt tijdens de garbagecollection, enzovoort.

Deze categorie bestaat uit de volgende gebeurtenissen:

GCStart_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau. Zie CLR ETW-trefwoorden en niveaus voor meer informatie.

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCStart_V1 1 Er is een garbagecollection gestart.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Count win:UInt32 De ndegarbagecollection.
Diepte win:UInt32 De generatie die wordt verzameld.
Reden win:UInt32 Waarom de garbagecollection is geactiveerd:

0x0 - Kleine object-heaptoewijzing.

0x1 - Geïnduceerd.

0x2 - Onvoldoende geheugen.

0x3 - Leeg.

0x4 - Toewijzing van grote object-heap.

0x5 - Onvoldoende ruimte (voor kleine object heap).

0x6 - Onvoldoende ruimte (voor grote object-heap).

0x7 : geïnduceerd maar niet gedwongen als blokkeren.

0x8 - Stresstests.

0x9 - De finalizer-thread die het proces heeft waargenomen, bevindt zich in onvoldoende geheugen en heeft een GC veroorzaakt.

0x10 : door gebruikerscode geïnduceerde GC en verzocht om een compacte GC te zijn.
Type win:UInt32 0x0 - Het blokkeren van garbagecollection is opgetreden buiten de achtergrond garbagecollection.

0x1 - Achtergrond garbagecollection.

0x2 : het blokkeren van garbagecollection is opgetreden tijdens de garbagecollection op de achtergrond.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCEnd_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCEnd_V1 2 De garbagecollection is beëindigd.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Count win:UInt32 De ndegarbagecollection.
Diepte win:UInt32 De generatie die werd verzameld.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCHeapStats_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Beschrijving
GCHeapStats_V1 4 Toont de heap-statistieken aan het einde van elke garbagecollection.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
GenerationSize0 win:UInt64 De grootte, in bytes, van generatie 0 geheugen.
TotalPromotedSize0 win:UInt64 Het aantal bytes dat wordt gepromoveerd van generatie 0 naar generatie 1.
GenerationSize1 win:UInt64 De grootte, in bytes, van generatie 1 geheugen.
TotalPromotedSize1 win:UInt64 Het aantal bytes dat wordt gepromoveerd van generatie 1 naar generatie 2.
GenerationSize2 win:UInt64 De grootte, in bytes, van generatie 2 geheugen.
TotalPromotedSize2 win:UInt64 Het aantal bytes dat in generatie 2 na de laatste verzameling heeft overleefd.
GenerationSize3 win:UInt64 De grootte, in bytes, van de grote object-heap.
TotalPromotedSize3 win:UInt64 Het aantal bytes dat in de grote object heap na de laatste verzameling heeft overleefd.
FinalizationPromotedSize win:UInt64 De totale grootte, in bytes, van de objecten die gereed zijn voor de afronding.
FinalizationPromotedCount win:UInt64 Het aantal objecten dat gereed is voor voltooien.
PinnedObjectCount win:UInt32 Het aantal vastgemaakte (niet-beveiligbare) objecten.
SinkBlockCount win:UInt32 Het aantal synchronisatieblokken dat wordt gebruikt.
GCHandleCount win:UInt32 Het aantal garbagecollectiongrepen dat in gebruik is.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCHeapStats_V2 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Beschrijving
GCHeapStats_V2 4 Toont de heap-statistieken aan het einde van elke garbagecollection.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
GenerationSize0 win:UInt64 De grootte, in bytes, van generatie 0 geheugen.
TotalPromotedSize0 win:UInt64 Het aantal bytes dat wordt gepromoveerd van generatie 0 naar generatie 1.
GenerationSize1 win:UInt64 De grootte, in bytes, van generatie 1 geheugen.
TotalPromotedSize1 win:UInt64 Het aantal bytes dat wordt gepromoveerd van generatie 1 naar generatie 2.
GenerationSize2 win:UInt64 De grootte, in bytes, van generatie 2 geheugen.
TotalPromotedSize2 win:UInt64 Het aantal bytes dat in generatie 2 na de laatste verzameling heeft overleefd.
GenerationSize3 win:UInt64 De grootte, in bytes, van de grote object-heap.
TotalPromotedSize3 win:UInt64 Het aantal bytes dat in de grote object heap na de laatste verzameling heeft overleefd.
FinalizationPromotedSize win:UInt64 De totale grootte, in bytes, van de objecten die gereed zijn voor de afronding.
FinalizationPromotedCount win:UInt64 Het aantal objecten dat gereed is voor voltooien.
PinnedObjectCount win:UInt32 Het aantal vastgemaakte (niet-beveiligbare) objecten.
SinkBlockCount win:UInt32 Het aantal synchronisatieblokken dat wordt gebruikt.
GCHandleCount win:UInt32 Het aantal garbagecollectiongrepen dat in gebruik is.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.
GenerationSize4 win:UInt64 De grootte, in bytes, van de vastgemaakte object-heap.
TotalPromotedSize4 win:UInt64 Het aantal bytes dat in de vastgemaakte object heap na de laatste verzameling heeft overleefd.

GCCreateSegment_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCCreateSegment_V1 5 Er is een nieuw garbagecollection-segment gemaakt. Bovendien wordt deze gebeurtenis gegenereerd voor elk bestaand segment wanneer tracering is ingeschakeld voor een proces dat al wordt uitgevoerd.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Adres win:UInt64 Het adres van het segment.
Tekengrootte win:UInt64 De grootte van het segment.
Type win:UInt32 0x0 - Kleine object heap.

0x1 - Grote object heap.

0x2 - Alleen-lezen heap.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

De grootte van segmenten die door de garbagecollector worden toegewezen, is implementatiespecifiek en kan op elk gewenst moment worden gewijzigd, ook in periodieke updates. Uw app mag nooit veronderstellingen maken over of afhankelijk zijn van een bepaalde segmentgrootte, en moet ook niet proberen om de hoeveelheid geheugen te configureren die beschikbaar is voor segmenttoewijzingen.

GCFreeSegment_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCFreeSegment_V1 6 Er is een garbagecollectionsegment vrijgegeven.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Adres win:UInt64 Het adres van het segment.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCRestartEEBegin_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCRestartEEBegin_V1 7 Hervatting van common language runtime-schorsing is gestart.

Geen gebeurtenisgegevens.

GCRestartEEEnd_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCRestartEEEnd_V1 3 Hervatting van common language runtime-schorsing is beëindigd.

Geen gebeurtenisgegevens.

GCSuspendEE_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCSuspendEE_V1 9 Begin van de schorsing van de uitvoeringsengine voor garbagecollection.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Reden win:UInt16 0x0 - Overig.

0x1 - Garbagecollection.

0x2 - Afsluiten van toepassingsdomein.

0x3 - Code pitchen.

0x4 - Afsluiten.

0x5 - Foutopsporingsprogramma.

0x6 - Voorbereiding op garbagecollection.
Tellen win:UInt32 De GC telt op dat moment. Normaal gesproken ziet u hierna een volgende GC Start-gebeurtenis en het aantal is dit aantal + 1 wanneer we de GC-index verhogen tijdens een garbagecollection.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCSuspendEEEnd_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCSuspendEEEnd_V1 8 Einde van de schorsing van de uitvoeringsengine voor garbagecollection.

Geen gebeurtenisgegevens.

GCAllocationTick_V2 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCAllocationTick_V2 10 Telkens wanneer ongeveer 100 kB per object heap wordt toegewezen. Dat wil gezegd: SOH, LOH en POH verzamelen hun toegewezen bytes afzonderlijk. In Server GC wordt dit per heap gedaan.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
AllocationAmount win:UInt32 De toewijzingsgrootte, in bytes. Deze waarde is nauwkeurig voor toewijzingen die kleiner zijn dan de lengte van een ULONG (4.294.967.295 bytes). Als de toewijzing groter is, bevat dit veld een afgekapte waarde. Gebruik AllocationAmount64 voor zeer grote toewijzingen.
AllocationKind win:UInt32 0x0 - Toewijzing van kleine objecten (toewijzing bevindt zich in kleine object-heap).
0x1 - Toewijzing van grote objecten (toewijzing bevindt zich in grote object-heap).
0x2 - Vastgemaakte objecttoewijzing (toewijzing bevindt zich in vastgemaakte object-heap).
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.
AllocationAmount64 win:UInt64 De toewijzingsgrootte, in bytes. Deze waarde is nauwkeurig voor zeer grote toewijzingen.
TypeId win:Aanwijzer Het adres van de MethodTable. Wanneer er verschillende typen objecten zijn toegewezen tijdens deze gebeurtenis, is dit het adres van de MethodTable die overeenkomt met het laatste toegewezen object (het object dat de drempelwaarde van 100 kB heeft veroorzaakt).
Typename win:UnicodeString De naam van het type dat is toegewezen. Wanneer er verschillende typen objecten zijn toegewezen tijdens deze gebeurtenis, is dit het type van het laatste object dat is toegewezen (het object waardoor de drempelwaarde van 100 kB is overschreden).
HeapIndex win:UInt32 De heap waar het object is toegewezen. Deze waarde is 0 (nul) bij uitvoering met garbagecollection van werkstation.

GCAllocationTick_V3 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCAllocationTick_V2 10 Telkens wanneer ongeveer 100 kB per object heap wordt toegewezen. Dat wil gezegd: SOH, LOH en POH verzamelen hun toegewezen bytes afzonderlijk. In Server GC wordt dit per heap gedaan.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
AllocationAmount win:UInt32 De toewijzingsgrootte, in bytes. Deze waarde is nauwkeurig voor toewijzingen die kleiner zijn dan de lengte van een ULONG (4.294.967.295 bytes). Als de toewijzing groter is, bevat dit veld een afgekapte waarde. Gebruik AllocationAmount64 voor zeer grote toewijzingen.
AllocationKind win:UInt32 0x0 - Toewijzing van kleine objecten (toewijzing bevindt zich in kleine object-heap).
0x1 - Toewijzing van grote objecten (toewijzing bevindt zich in grote object-heap).
0x2 - Vastgemaakte objecttoewijzing (toewijzing bevindt zich in vastgemaakte object-heap).
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.
AllocationAmount64 win:UInt64 De toewijzingsgrootte, in bytes. Deze waarde is nauwkeurig voor zeer grote toewijzingen.
TypeId win:Aanwijzer Het adres van de MethodTable. Wanneer er verschillende typen objecten zijn toegewezen tijdens deze gebeurtenis, is dit het adres van de MethodTable die overeenkomt met het laatste toegewezen object (het object dat de drempelwaarde van 100 kB heeft veroorzaakt).
Typename win:UnicodeString De naam van het type dat is toegewezen. Wanneer er verschillende typen objecten zijn toegewezen tijdens deze gebeurtenis, is dit het type van het laatste object dat is toegewezen (het object waardoor de drempelwaarde van 100 kB is overschreden).
HeapIndex win:UInt32 De heap waar het object is toegewezen. Deze waarde is 0 (nul) bij uitvoering met garbagecollection van werkstation.
Adres win:Aanwijzer Het adres van het laatst toegewezen object.

GCFinalizersBegin_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCFinalizersBegin_V1 14 Het begin van actieve finalizers.

Geen gebeurtenisgegevens.

GCFinalizersEnd_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCFinalizersEnd_V1 13 Het einde van actieve finalizers.

In de volgende tabel ziet u de gebeurtenisgegevens:

Veldnaam Gegevenstype Beschrijving
Count win:UInt32 Het aantal finalizers dat is uitgevoerd.
ClrInstanceID win:UInt16 Unieke id voor het exemplaar van CLR of CoreCLR.

GCCreateConcurrentThread_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)
ThreadingKeyword (0x10000) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCCreateConcurrentThread_V1 11 Gelijktijdige garbagecollection-thread is gemaakt.

Geen gebeurtenisgegevens.

GCTerminateConcurrentThread_V1 gebeurtenis

In de volgende tabel ziet u het trefwoord en het niveau:

Trefwoord voor het genereren van de gebeurtenis Niveau
GCKeyword (0x1) Informatie (4)
ThreadingKeyword (0x10000) Informatie (4)

In de volgende tabel ziet u de gebeurtenisgegevens:

Gebeurtenis Gebeurtenis-id Verhoogd wanneer
GCTerminateConcurrentThread_V1 12 Gelijktijdige garbagecollectionthread is beëindigd.

Geen gebeurtenisgegevens.

Zie ook