ICorProfilerCallback::ObjectReferences (Método)
Notifica al generador de perfiles los objetos en memoria a los que hace referencia el objeto especificado.
HRESULT ObjectReferences(
[in] ObjectID objectId,
[in] ClassID classId,
[in] ULONG cObjectRefs,
[in, size_is(cObjectRefs)] ObjectID objectRefIds[] );
Parámetros
objectId
[in] Id. del objeto que hace referencia a objetos.classId
[in] Id. de la clase de la que es una instancia el objeto especificado.cObjectRefs
[in] Número de objetos a los que hace referencia el objeto especificado (es decir, el número de elementos de la matriz objectRefIds ).objectRefIds
[in] Matriz de identificadores de objetos a los que hace referencia objectId.
Comentarios
Se llama al método ObjectReferences para cada objeto que permanece en el montón después de completarse una recolección de elementos no utilizados. Si el generador de perfiles devuelve un error a partir de esta devolución de llamada, los servicios de generación de perfiles dejarán de invocar esta devolución de llamada hasta la siguiente recolección de elementos no utilizados.
La devolución de llamada ObjectReferences puede utilizarse junto con la devolución de llamada ICorProfilerCallback::RootReferences para crear un gráfico completo de referencias a objetos para el motor en tiempo de ejecución. Common Language Runtime (CLR) garantiza que el método ObjectReferences informa una sola vez de cada referencia a objeto.
Los identificadores de objeto devueltos por ObjectReferences no son válidos durante la propia devolución de llamada, porque la recolección de elementos no utilizados podría haber comenzado a mover objetos. Por lo tanto, los generadores de perfiles no deben intentar inspeccionar los objetos durante una llamada a ObjectReferences. Cuando se llama a ICorProfilerCallback2::GarbageCollectionFinished, la recolección de elementos no utilizados se ha completado y la inspección puede realizarse sin ningún riesgo.
Un objeto ClassId null indica que objectId tiene un tipo que se está descargando.
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0