Перечисление COR_PRF_HIGH_MONITOR
[Поддерживается в .NET Framework 4.5.2 и более поздних версиях.]
Предоставляет флаги в дополнение к флагам в перечислении COR_PRF_MONITOR , которые профилировщик может указать для метода ICorProfilerInfo5::SetEventMask2 при загрузке.
Синтаксис
typedef enum {
COR_PRF_HIGH_MONITOR_NONE = 0x00000000,
COR_PRF_HIGH_ADD_ASSEMBLY_REFERENCES = 0x00000001,
COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED = 0x00000002,
COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS = 0x00000004,
COR_PRF_HIGH_DISABLE_TIERED_COMPILATION = 0x00000008,
COR_PRF_HIGH_BASIC_GC = 0x00000010,
COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS = 0x00000020,
COR_PRF_HIGH_MONITOR_LARGEOBJECT_ALLOCATED = 0x00000040,
COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE = 0,
COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH = COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED |
COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS |
COR_PRF_HIGH_BASIC_GC |
COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS |
COR_PRF_HIGH_MONITOR_LARGEOBJECT_ALLOCATED,
COR_PRF_HIGH_MONITOR_IMMUTABLE = COR_PRF_HIGH_DISABLE_TIERED_COMPILATION
} COR_PRF_HIGH_MONITOR;
Элементы
Член | Описание |
---|---|
COR_PRF_HIGH_MONITOR_NONE |
Флаги не установлены. |
COR_PRF_HIGH_ADD_ASSEMBLY_REFERENCES |
Управляет обратным вызовом ICorProfilerCallback6::GetAssemblyReference для добавления ссылок на сборки во время закрытия ссылки на сборку CLR. |
COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED |
Управляет обратным вызовом ICorProfilerCallback7::ModuleInMemorySymbolsUpdated для обновления потока символов, связанного с модулем в памяти. |
COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS |
Управляет обратным вызовом ICorProfilerCallback9::D ynamicMethodUnloaded , указывающим, когда динамический метод был собран и выгружен. Доступно с версии 4.7.2 |
COR_PRF_HIGH_DISABLE_TIERED_COMPILATION |
Только .NET Core 3.0 и более поздних версий: отключает многоуровневую компиляцию для профилировщиков. |
COR_PRF_HIGH_BASIC_GC |
Только .NET Core 3.0 и более поздних версий: предоставляет упрощенный вариант профилирования сборки мусора по сравнению COR_PRF_MONITOR_GC с . Управляет только обратными вызовами GarbageCollectionStarted, GarbageCollectionFinished и GetGenerationBounds . В отличие от флага COR_PRF_MONITOR_GC , COR_PRF_HIGH_BASIC_GC не отключает параллельную сборку мусора. |
COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS |
Только .NET Core 3.0 и более поздних версий. Включает обратные вызовы MovedReferences и MovedReferences2 для сжатия только GCs. |
COR_PRF_HIGH_MONITOR_LARGEOBJECT_ALLOCATED |
.NET Core 3.0 и более поздних версий: аналогично COR_PRF_MONITOR_OBJECT_ALLOCATED , но предоставляет сведения о выделении объектов только для кучи больших объектов (LOH). |
COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE |
Представляет все флаги COR_PRF_HIGH_MONITOR , для которых необходимы улучшенные профилировщиком изображения. Соответствует флагу COR_PRF_REQUIRE_PROFILE_IMAGE в перечислении COR_PRF_MONITOR . |
COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH |
Представляет все флаги COR_PRF_HIGH_MONITOR , которые могут быть установлены после присоединения профилировщика к выполняющемуся приложению. |
COR_PRF_HIGH_MONITOR_IMMUTABLE |
Представляет все флаги COR_PRF_HIGH_MONITOR , которые могут быть установлены только во время инициализации. Попытка изменить какой-нибудь из этих флагов в другом месте вызовет значение HRESULT , указывающее на сбой. |
Комментарии
Флаги COR_PRF_HIGH_MONITOR
используются с параметром pdwEventsHigh
методов ICorProfilerInfo5::GetEventMask2 и ICorProfilerInfo5::SetEventMask2 .
Начиная с платформа .NET Framework 4.6.1 значение COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH
изменилось с 0 на COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED
(0x00000002). Начиная с платформа .NET Framework 4.7.2, его значение изменилось с COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED
на COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS
.
COR_PRF_HIGH_MONITOR_IMMUTABLE
— это битовая маска, представляющая все флаги, которые можно задать только во время инициализации. Попытка изменить любой из этих флагов в другом месте приводит к сбою HRESULT
.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorProf.idl, CorProf.h
Библиотека: CorGuids.lib
платформа .NET Framework версии: доступно с версии 4.5.2