Megosztás a következőn keresztül:


COR_GC_REFERENCE struktúra

Információkat tartalmaz egy szemétgyűjtésre készülő objektumról.

Szemantika

typedef struct _COR_GC_REFERENCE {
    ICorDebugAppDomain *domain;
    ICorDebugValue *location;
    CorGCReferenceType type;
    UINT64 extraData;
} COR_GC_REFERENCE;

Members

Tag Description
domain Mutató arra az alkalmazástartományra, amelyhez a leíró vagy az objektum tartozik. Értéke lehet null.
location Egy ICorDebugValue vagy egy ICorDebugReferenceValue felület, amely megfelel a szemétgyűjtéshez szükséges objektumnak.
type CorGCReferenceType enumerálási érték, amely jelzi, hogy honnan származik a gyökér. További információkért lásd a Megjegyzések szakaszt.
extraData További adatok a gyűjtendő objektumról. Ez az információ az objektum forrásától függ, ahogy azt a type mező jelzi. További információkért lásd a Megjegyzések szakaszt.

Megjegyzések

A type mező egy CorGCReferenceType enumerálási érték, amely azt jelzi, hogy honnan származik a hivatkozás. Egy adott COR_GC_REFERENCE érték a következő típusú felügyelt objektumok bármelyikét tükrözheti:

  • Az összes felügyelt verem objektumai (CorGCReferenceType.CorReferenceStack). Ez magában foglalja a felügyelt kód élő hivatkozásait, valamint a közös nyelvi futtatókörnyezet által létrehozott objektumokat.
  • A leírótáblából származó objektumok (CorGCReferenceType.CorHandle*). Ide tartoznak a modul erős hivatkozásai (HNDTYPE_STRONG és HNDTYPE_REFCOUNT) és statikus változói.
  • A véglegesítő üzenetsor objektumai (CorGCReferenceType.CorReferenceFinalizer). A véglegesítő üzenetsor addig gyökerezik, amíg a véglegesítő le nem fut.

A extraData mező a hivatkozás forrásától (vagy típusától) függően további adatokat tartalmaz. A lehetséges értékek a következők:

  • DependentSource. type Ha igenCorGCReferenceType.CorHandleStrongDependent, akkor ez a mező az az objektum, amely, ha él, a kukagyűjtéshez szükséges objektumot gyökerezteti.COR_GC_REFERENCE.Location
  • RefCount. Ha igen typeCorGCReferenceType.CorHandleStrongRefCount, akkor ez a mező a leíró hivatkozási száma.
  • Size. Ha igen typeCorGCReferenceType.CorHandleStrongSizedByref, akkor ez a mező annak az objektumfának az utolsó mérete, amelyhez a szemétgyűjtő kiszámítja az objektumgyökereket. Vegye figyelembe, hogy ez a számítás nem feltétlenül naprakész.

Requirements

Platformok: Lásd: .NET által támogatott operációs rendszerek.

Fejléc: CorDebug.idl, CorDebug.h

Könyvtár: CorGuids.lib

.NET-verziók: A .NET-keretrendszer 4.5-ös verziója óta érhető el