Compartilhar via


Método de ICorProfilerCallback::ObjectReferences

Notifica o profiler sobre objetos na memória que está sendo referenciado pelo objeto especificado.

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

Parâmetros

  • objectId
    [in] A identificação do objeto que faz referência a objetos.

  • classId
    [in] A identificação do que o objeto especificado for uma instância da classe.

  • cObjectRefs
    [in] O número de objetos referenciados pelo objeto especificado (ou seja, o número de elementos de objectRefIds array).

  • objectRefIds
    [in] Uma matriz de IDs de objetos que estão sendo referenciado por objectId.

Comentários

O ObjectReferences método é chamado para cada objeto restantes na heap após a conclusão de uma coleta de lixo. Se o criador de perfil retorna um erro desse retorno de chamada, os serviços de criação de perfil descontinuar a invocar esse retorno de chamada até a próxima coleta de lixo.

O ObjectReferences retorno de chamada pode ser usado em conjunto com o ICorProfilerCallback::RootReferences o retorno de chamada para criar um gráfico de referência de objeto completo para o tempo de execução. O common language runtime (CLR) garante que cada referência de objeto é relatada em apenas uma vez pela ObjectReferences método.

O IDs de objeto retornado por ObjectReferences não são válidos durante o retorno de chamada, porque a coleta de lixo pode estar no meio da movimentação de objetos. Portanto, geradores de perfis não devem tentar inspecionar objetos durante um ObjectReferences chamada. Quando ICorProfilerCallback2::GarbageCollectionFinished é chamado, o lixo coleção é concluída e a inspeção pode ser feita com segurança.

Um valor nulo ClassId indica que objectId tem um tipo que está descarregando.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: Corprof. idl, CorProf.h

Biblioteca: CorGuids.lib

.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Consulte também

Referência

Interface de ICorProfilerCallback