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
- GCEnd_V1 gebeurtenis
- GCHeapStats_V1 gebeurtenis
- GCHeapStats_V2 gebeurtenis
- GCCreateSegment_V1 gebeurtenis
- GCFreeSegment_V1 gebeurtenis
- GCRestartEEBegin_V1 gebeurtenis
- GCRestartEEEnd_V1 Gebeurtenis
- GCSuspendEE_V1 gebeurtenis
- GCSuspendEEEnd_V1 gebeurtenis
- GCAllocationTick_V2 gebeurtenis
- GCAllocationTick_V3 Gebeurtenis
- GCFinalizersBegin_V1 gebeurtenis
- GCFinalizersEnd_V1 gebeurtenis
- GCCreateConcurrentThread_V1 gebeurtenis
- GCTerminateConcurrentThread_V1 gebeurtenis
GCStart_V1 gebeurtenis
In de volgende tabel ziet u het trefwoord en het niveau. Zie CLR ETW-trefwoorden en niveausvoor 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 |
---|---|---|
Tellen | win:UInt32 | De ngarbagecollection. |
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 |
---|---|---|
Tellen | win:UInt32 | De ngarbagecollection. |
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. |
Grootte | 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) |
Uitgebreid (5) |
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) |
Uitgebreid (5) |
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 |
---|---|---|
Tellen | 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.