COR_GC_REFERENCE struktur
Innehåller information om ett objekt som ska skräpinsamling.
Syntax
typedef struct _COR_GC_REFERENCE {
ICorDebugAppDomain *domain;
ICorDebugValue *location;
CorGCReferenceType type;
UINT64 extraData;
} COR_GC_REFERENCE;
Medlemmar
Medlem | Description |
---|---|
domain |
En pekare till programdomänen som referensen eller objektet tillhör. Värdet kan vara null . |
location |
Antingen ett ICorDebugValue- eller ICorDebugReferenceValue-gränssnitt som motsvarar objektet som ska skräpinsamling. |
type |
Ett CorGCReferenceType-uppräkningsvärde som anger var roten kom ifrån. Mer information finns i avsnittet Kommentarer. |
extraData |
Ytterligare data om objektet som ska skräpinsamling. Den här informationen beror på källan till objektet, vilket anges av fältet type . Mer information finns i avsnittet Kommentarer. |
Kommentarer
Fältet type
är ett Uppräkningsvärde för CorGCReferenceType som anger var referensen kom ifrån. Ett visst COR_GC_REFERENCE
värde kan återspegla någon av följande typer av hanterade objekt:
Objekt från alla hanterade staplar (
CorGCReferenceType.CorReferenceStack
). Detta inkluderar livereferenser i hanterad kod samt objekt som skapats av common language runtime.Objekt från referenstabellen (
CorGCReferenceType.CorHandle*
). Detta inkluderar starka referenser (HNDTYPE_STRONG
ochHNDTYPE_REFCOUNT
) och statiska variabler i en modul.Objekt från finalizer-kön (
CorGCReferenceType.CorReferenceFinalizer
). Finalizer-kön rotobjekt tills slutföraren har körts.
Fältet extraData
innehåller extra data beroende på referensens källa (eller typ). Möjliga värden:
DependentSource
.type
Om ärCorGCReferenceType.CorHandleStrongDependent
är är det här fältet det objekt som, om det är vid liv, rotar objektet som ska skräpsamlas vidCOR_GC_REFERENCE.Location
.RefCount
.type
Om ärCorGCReferenceType.CorHandleStrongRefCount
är är det här fältet referensantalet för referensen.Size
.type
Om ärCorGCReferenceType.CorHandleStrongSizedByref
är är det här fältet den sista storleken på objektträdet som skräpinsamlaren beräknade objektrötterna för. Observera att den här beräkningen inte nödvändigtvis är uppdaterad.
Krav
Plattformar: Se Systemkrav.
Huvudet: CorDebug.idl, CorDebug.h
Bibliotek: CorGuids.lib
.NET Framework versioner: Tillgänglig sedan 4.5