Метод ICorProfilerCallback2::GarbageCollectionStarted
Уведомляет профилировщик кода о начале сборки мусора.
HRESULT GarbageCollectionStarted(
[in] int cGenerations,
[in, size_is(cGenerations), length_is(cGenerations)] BOOL generationCollected[],
[in] COR_PRF_GC_REASON reason);
Параметры
cGenerations
[in] Общее число записей в массиве generationCollected.generationCollected
[in] Массив логических значений, которые равны true, если поколение, соответствующее индексу массива, было подобрано во время этой сборки мусора; в противном случае они равны false.Массив индексируется значением перечисления COR_PRF_GC_GENERATION, которое задает поколение.
reason
[in] Значение перечисления COR_PRF_GC_REASON, указывающее причину вызова сборки мусора.
Заметки
Все обратные вызовы, связанные с этим процессом сборки мусора, осуществляются между обратным вызовом GarbageCollectionStarted и соответствующим обратным вызовом ICorProfilerCallback2::GarbageCollectionFinished. Эти обратные вызовы должны осуществляться в одном потоке.
Профилировщик может безопасно проверить объекты в их исходных расположениях во время обратного вызова GarbageCollectionStarted. Сборщик мусора начнет перемещение объектов после возврата значения методом GarbageCollectionStarted. После того как профилировщик возвратит результат этого обратного вызова, он должен интерпретировать все идентификаторы объектов как допустимые, пока не получит обратный вызов ICorProfilerCallback2::GarbageCollectionFinished.
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: CorProf.idl, CorProf.h
Библиотека: CorGuids.lib
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0