Condividi tramite


Metodo ICorProfilerCallback::RootReferences

Fornisce al profiler informazioni sui riferimenti radice dopo la Garbage Collection.

HRESULT RootReferences(
    [in] ULONG    cRootRefs,
    [in, size_is(cRootRefs)] ObjectID rootRefIds[] );

Parametri

  • cRootRefs
    [in] Numero di riferimenti nella matrice rootRefIds.

  • rootRefIds
    [in] Matrice di ID oggetto che fanno riferimento a un oggetto statico o a un oggetto sullo stack.

Note

RootReferences e ICorProfilerCallback2::RootReferences2 sono chiamati per informare il profiler. I profiler in genere implementano l'uno o l'altro, ma non entrambi, perché le informazioni passate in RootReferences2 sono un superset di quelle passate in RootReferences.

È possibile che la matrice rootRefIds contenga un oggetto null. Ad esempio, tutti i riferimenti a oggetto dichiarati sullo stack vengono trattati come radici dal Garbage Collector e verranno sempre segnalati.

Gli ID oggetto restituiti da RootReferences non sono validi durante il callback vero e proprio perché la Garbage Collection potrebbe non avere ancora terminato di spostare oggetti dai vecchi indirizzi a quelli nuovi. I profiler non devono pertanto tentare di controllare gli oggetti durante una chiamata di RootReferences. Quando viene chiamato ICorProfilerCallback2::GarbageCollectionFinished, tutti gli oggetti sono stati spostati nelle nuove posizioni e l'ispezione potrà essere eseguita in modo sicuro.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: CorProf.idl, CorProf.h

Libreria: CorGuids.lib

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vedere anche

Riferimenti

Interfaccia ICorProfilerCallback