Compartir a través de


ICorProfilerCallback::RootReferences (Método)

Notifica al generador de perfiles acerca de las referencias raíz después de la recolección de elementos no utilizados.

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 identificadores de objeto que hacen referencia a un objeto estático o a un objeto en la pila.

Comentarios

Se llama a RootReferences y a ICorProfilerCallback2::RootReferences2 para informar al generador de perfiles. Normalmente, los generadores de perfiles implementarán uno u otro, pero no ambos, ya que la información que se pasa en RootReferences2 es un supraconjunto de la información que se pasa en RootReferences.

Es posible que la matriz de rootRefIds contenga un objeto null. Por ejemplo, el recolector de elementos no utilizados trata todas las referencias a objeto declaradas en la pila como raíces, y siempre se notifican.

Los identificadores de objeto devueltos por RootReferences no son válidos durante la propia devolución de llamada, puesto que la recolección de elementos no utilizados podría estar moviendo objetos desde direcciones antiguas hasta direcciones nuevas. Por lo tanto, los generadores de perfiles no deben intentar inspeccionar los objetos durante una llamada a RootReferences. Cuando se llama a ICorProfilerCallback2::GarbageCollectionFinished, todos los objetos se mueven a su nueva ubicación y se pueden inspeccionar de forma segura.

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

Vea también

Referencia

ICorProfilerCallback (Interfaz)