Condividi tramite


Metodo ICorProfilerCallback::ObjectReferences

Fornisce al profiler informazioni sugli oggetti in memoria a cui fa riferimento l'oggetto specificato.

HRESULT ObjectReferences(
    [in]  ObjectID objectId,
    [in]  ClassID  classId,
    [in]  ULONG    cObjectRefs,
    [in, size_is(cObjectRefs)] ObjectID objectRefIds[] );

Parametri

  • objectId
    [in] ID dell'oggetto che fa riferimento agli oggetti.

  • classId
    [in] ID della classe di cui l'oggetto specificato è un'istanza.

  • cObjectRefs
    [in] Numero di oggetti a cui fa riferimento l'oggetto specificato (cioè, il numero di elementi nella matrice objectRefIds ).

  • objectRefIds
    [in] Matrice di ID di oggetti a cui fa riferimento objectId.

Note

Il metodo ObjectReferences viene chiamato per ogni oggetto che rimane nell'heap dopo il completamento di una Garbage Collection. Se il profiler restituisce un errore dal callback, i servizi di analisi non richiameranno più tale callback fino alla successiva Garbage Collection.

Il callback di ObjectReferences può essere utilizzato insieme al callback di ICorProfilerCallback::RootReferences per creare un grafico completo dei riferimenti agli oggetti per il runtime. Common Language Runtime garantisce che ogni riferimento a un oggetto venga segnalato solo una volta dal metodo ObjectReferences.

Gli ID oggetto restituiti da ObjectReferences non sono validi durante il callback stesso perché l’operazione di Garbage Collection potrebbe non avere ancora finito di spostare gli oggetti. I profiler non devono pertanto tentare di controllare gli oggetti durante una chiamata di ObjectReferences. Quando viene chiamato ICorProfilerCallback2::GarbageCollectionFinished, l’operazione di Garbage Collection viene completa e l'ispezione può essere eseguita senza problemi.

ClassId null indica che objectId ha un tipo in corso di scaricamento.

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