Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Contiene informazioni su un oggetto che deve essere sottoposto a Garbage Collection.
Sintassi
typedef struct _COR_GC_REFERENCE {
ICorDebugAppDomain *domain;
ICorDebugValue *location;
CorGCReferenceType type;
UINT64 extraData;
} COR_GC_REFERENCE;
Members
| Membro | Description |
|---|---|
domain |
Puntatore al dominio applicazione a cui appartiene l'handle o l'oggetto. Il valore può essere null. |
location |
Interfaccia ICorDebugValue o ICorDebugReferenceValue che corrisponde all'oggetto da garbage collection. |
type |
Valore di enumerazione CorGCReferenceType che indica da dove proviene la radice. Per altre informazioni, vedere la sezione Osservazioni. |
extraData |
Dati aggiuntivi sull'oggetto da eseguire per il Garbage Collection. Queste informazioni dipendono dall'origine dell'oggetto, come indicato dal type campo . Per altre informazioni, vedere la sezione Osservazioni. |
Osservazioni:
Il type campo è un valore di enumerazione CorGCReferenceType che indica da dove proviene il riferimento. Un particolare COR_GC_REFERENCE valore può riflettere uno dei tipi di oggetti gestiti seguenti:
- Oggetti di tutti gli stack gestiti (
CorGCReferenceType.CorReferenceStack). Sono inclusi i riferimenti in tempo reale nel codice gestito, nonché gli oggetti creati da Common Language Runtime. - Oggetti della tabella handle (
CorGCReferenceType.CorHandle*). Sono inclusi riferimenti sicuri (HNDTYPE_STRONGeHNDTYPE_REFCOUNT) e variabili statiche in un modulo. - Oggetti dalla coda del finalizzatore (
CorGCReferenceType.CorReferenceFinalizer). Oggetti radice della coda del finalizzatore fino all'esecuzione del finalizzatore.
Il extraData campo contiene dati aggiuntivi a seconda dell'origine (o del tipo) del riferimento. I valori possibili sono:
-
DependentSource.typeSe èCorGCReferenceType.CorHandleStrongDependent, questo campo è l'oggetto che, se attivo, radici l'oggetto da raccogliere inCOR_GC_REFERENCE.Location. -
RefCount.typeSe èCorGCReferenceType.CorHandleStrongRefCount, questo campo è il conteggio dei riferimenti dell'handle. -
Size.typeSe èCorGCReferenceType.CorHandleStrongSizedByref, questo campo è l'ultima dimensione dell'albero di oggetti per cui il Garbage Collector ha calcolato le radici dell'oggetto. Si noti che questo calcolo non è necessariamente aggiornato.
Requisiti
Piattaforme: Vedere Sistemi operativi supportati da .NET.
Intestazione: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versioni di .NET: Disponibile a partire da .NET Framework 4.5