Метод 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
вызов.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorProf.idl, CorProf.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: доступно с версии 2.0.