Поделиться через


Метод 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.

См. также раздел