ICorProfilerCallback::RootReferences, méthode
Notifie le profileur avec des informations sur les références racines après le garbage collection.
Syntaxe
HRESULT RootReferences(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[] );
Paramètres
cRootRefs
[in] Nombre de références dans le tableau rootRefIds
.
rootRefIds
[in] Tableau des ID d’objet qui référencent un objet statique ou à un objet de la pile.
Notes
RootReferences
et ICorProfilerCallback2::RootReferences2 sont appelés pour notifier le profileur. Les profileurs implémentent normalement l’une ou l’autre de ces méthodes, mais pas les deux, car les informations passées dans RootReferences2
constituent un surensemble des informations passées dans RootReferences
.
Il est possible que le tableau rootRefIds
contienne un objet Null. Par exemple, toutes les références d’objet déclarées sur la pile sont traitées comme des racines par le récupérateur de mémoire et sont toujours signalées.
Les ID d’objet retournés par RootReferences
ne sont pas valides pendant le rappel, car le garbage collection peut être en train de déplacer des objets à partir d’anciennes adresses vers de nouvelles adresses. Les profileurs ne doivent donc pas essayer d’inspecter des objets pendant un appel de RootReferences
. Quand ICorProfilerCallback2::GarbageCollectionFinished est appelé, tous les objets sont déplacés vers leur nouvel emplacement et peuvent être inspectés en toute sécurité.
Spécifications
Plateformes : Consultez Configuration requise.
En-tête : CorProf.idl, CorProf.h
Bibliothèque : CorGuids.lib
Versions de .NET Framework : Disponible depuis la version 2.0