Método ICorProfilerCallback::RootReferences
Notifica o gerador de perfis com informações sobre referências de raiz após a libertação da memória.
Sintaxe
HRESULT RootReferences(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[] );
Parâmetros
cRootRefs
[in] O número de referências na rootRefIds
matriz.
rootRefIds
[in] Uma matriz de IDs de objeto que referenciam um objeto estático ou um objeto na pilha.
Observações
Tanto iCorProfilerCallback2::RootReferences2 são chamados para notificar o gerador de perfis.RootReferences
Normalmente, os geradores de perfis implementam um ou outro, mas não ambos, porque as informações transmitidas são RootReferences2
um superconjunto do que foi transmitido em RootReferences
.
É possível que a rootRefIds
matriz contenha um objeto nulo. Por exemplo, todas as referências de objeto declaradas na pilha são tratadas como raízes pelo recoletor de lixo e serão sempre comunicadas.
Os IDs de objeto devolvidos por RootReferences
não são válidos durante a chamada de retorno propriamente dita, porque a libertação da memória pode estar no meio da movimentação de objetos de endereços antigos para novos endereços. Por conseguinte, os geradores de perfis não podem tentar inspecionar objetos durante uma RootReferences
chamada. Quando ICorProfilerCallback2::GarbageCollectionFinished é chamado, todos os objetos foram movidos para as suas novas localizações e podem ser inspecionados em segurança.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
.NET Framework Versões: Disponível desde 2.0