Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Contient des informations sur un objet qui doit être collecté par le garbage-collect.
Syntaxe
typedef struct _COR_GC_REFERENCE {
ICorDebugAppDomain *domain;
ICorDebugValue *location;
CorGCReferenceType type;
UINT64 extraData;
} COR_GC_REFERENCE;
Members
| Membre | Descriptif |
|---|---|
domain |
Pointeur vers le domaine d’application auquel appartient le handle ou l’objet. Sa valeur peut être null. |
location |
ICorDebugValue ou une interface ICorDebugReferenceValue qui correspond à l’objet à collecter par la mémoire. |
type |
Valeur d’énumération CorGCReferenceType qui indique l’origine de la racine. Pour plus d’informations, consultez la section Remarques. |
extraData |
Données supplémentaires sur l’objet à collecter par le garbage-collect. Ces informations dépendent de la source de l’objet, comme indiqué par le type champ. Pour plus d’informations, consultez la section Remarques. |
Remarques
Le type champ est une valeur d’énumération CorGCReferenceType qui indique à partir de laquelle la référence provient. Une valeur particulière COR_GC_REFERENCE peut refléter l’un des types d’objets managés suivants :
- Objets de toutes les piles managées (
CorGCReferenceType.CorReferenceStack). Cela inclut les références actives dans le code managé, ainsi que les objets créés par le Common Language Runtime. - Objets de la table de handles (
CorGCReferenceType.CorHandle*). Cela inclut des références fortes (HNDTYPE_STRONGetHNDTYPE_REFCOUNT) et des variables statiques dans un module. - Objets de la file d’attente du finaliseur (
CorGCReferenceType.CorReferenceFinalizer). Les objets de file d’attente du finaliseur jusqu’à ce que le finaliseur s’exécute.
Le extraData champ contient des données supplémentaires en fonction de la source (ou du type) de la référence. Les valeurs possibles sont les suivantes :
-
DependentSource. Si l’objettypeestCorGCReferenceType.CorHandleStrongDependent, ce champ est l’objet qui, s’il est vivant, racine l’objet à collecter à la mémoire à l’adresseCOR_GC_REFERENCE.Location. -
RefCount. Si latypevaleur estCorGCReferenceType.CorHandleStrongRefCount, ce champ est le nombre de références du handle. -
Size. Si latypevaleur estCorGCReferenceType.CorHandleStrongSizedByref, ce champ est la dernière taille de l’arborescence d’objets pour laquelle le garbage collector a calculé les racines de l’objet. Notez que ce calcul n’est pas nécessairement à jour.
Spécifications
Plates-formes: Consultez les systèmes d’exploitation pris en charge par .NET.
En-tête: CorDebug.idl, CorDebug.h
Bibliothèque: CorGuids.lib
Versions de .NET : Disponible depuis .NET Framework 4.5