Partager via


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

Voir aussi