Método ICorProfilerCallback2::GarbageCollectionStarted
Notifica o gerador de perfis de código de que a libertação da memória foi iniciada.
Sintaxe
HRESULT GarbageCollectionStarted(
[in] int cGenerations,
[in, size_is(cGenerations), length_is(cGenerations)] BOOL generationCollected[],
[in] COR_PRF_GC_REASON reason);
Parâmetros
cGenerations
[in] O número total de entradas na generationCollected
matriz.
generationCollected
[in] Uma matriz de valores booleanos, que são true
se a geração que corresponde ao índice de matriz estiver a ser recolhida por esta libertação da memória; caso contrário, false
.
A matriz é indexada por um valor da enumeração COR_PRF_GC_GENERATION , que indica a geração.
reason
[in] Um valor da enumeração COR_PRF_GC_REASON que indica a razão pela qual a libertação da memória foi induzida.
Observações
Todas as chamadas de retorno relativas a esta libertação da memória ocorrerão entre a GarbageCollectionStarted
chamada de retorno e a chamada de retorno ICorProfilerCallback2::GarbageCollectionFinished correspondente. Estas chamadas de retorno não têm de ocorrer no mesmo thread.
É seguro que o gerador de perfis inspecione os objetos nas respetivas localizações originais durante a GarbageCollectionStarted
chamada de retorno. O recoletor de lixo começará a mover objetos após a devolução de GarbageCollectionStarted
. Depois de o gerador de perfis ter devolvido esta chamada de retorno, o gerador de perfis deve considerar todos os IDs de objeto inválidos até receber uma ICorProfilerCallback2::GarbageCollectionFinished
chamada de retorno.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
.NET Framework Versões: Disponível desde 2.0