ICorProfilerCallback::RootReferences (Método)
Notifica al generador de perfiles información sobre las referencias raíz después de la recolección de elementos no utilizados.
Sintaxis
HRESULT RootReferences(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[] );
Parámetros
cRootRefs
[in] Número de referencias en la matriz rootRefIds
.
rootRefIds
[in] Matriz de id. de objeto que hacen referencia a un objeto estático o a un objeto de la pila.
Comentarios
Se llama a RootReferences
y ICorProfilerCallback2::RootReferences2 para notificar al generador de perfiles. Normalmente, los generadores de perfiles implementarán uno o el otro, pero no ambos, porque la información pasada en RootReferences2
es un superconjunto del que se ha pasado en RootReferences
.
Es posible que la matriz rootRefIds
contenga un objeto null. Por ejemplo, el recolector de elementos no utilizados trata a todas las referencias de objeto declaradas en la pila como raíces y siempre se notificarán.
Los id. de objeto que devuelve RootReferences
no son válidos durante la propia devolución de llamada porque el recolector de elementos no utilizados puede estar en proceso de mover objetos de direcciones anteriores a nuevas. Por lo tanto, los generadores de perfiles no deben intentar inspeccionar objetos durante una llamada a RootReferences
. Si se llama a ICorProfilerCallback2::GarbageCollectionFinished, significará que todos los objetos se han movido a sus nuevas ubicaciones y que se pueden inspeccionar con seguridad.
Requisitos
Plataformas: Vea Requisitos de sistema.
Encabezado: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versiones de .NET Framework: disponible a partir de la versión 2.0