Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предоставляет методы, используемые средой CLR для уведомления профилировщика кода о возникновении событий, на которые подписан профилировщик. Интерфейс ICorProfilerCallback2 является расширением интерфейса ICorProfilerCallback . То есть он предоставляет новые обратные вызовы, появившиеся в платформа .NET Framework версии 2.0.
Примечание
Каждая реализация метода должна возвращать HRESULT со значением S_OK при успешном выполнении или E_FAIL при сбое. В настоящее время среда CLR игнорирует HRESULT, возвращаемое каждым обратным вызовом, за исключением ICorProfilerCallback::ObjectReferences.
Методы
| Метод | Описание |
|---|---|
| Метод FinalizeableObjectQueued | Уведомляет профилировщик кода о том, что объект с методом завершения помещен в очередь в поток метода завершения для выполнения его Finalize метода. |
| Метод GarbageCollectionFinished | Уведомляет профилировщика о том, что сборка мусора завершена и для нее были выполнены все обратные вызовы сборки мусора. |
| Метод GarbageCollectionStarted | Уведомляет профилировщик кода о начале сборки мусора. |
| Метод HandleCreated | Уведомляет профилировщик кода о создании дескриптора сборки мусора. |
| Метод HandleDestroyed | Уведомляет профилировщик кода о том, что дескриптор сборки мусора был уничтожен. |
| Метод RootReferences2 | Уведомляет профилировщик о корневых ссылках после сборки мусора. Этот метод является расширением метода ICorProfilerCallback::RootReferences . |
| Метод SurvivingReferences | Уведомляет профилировщик о ссылках на объекты, которые пережили сборку мусора. |
| Метод ThreadNameChanged | Уведомляет профилировщик кода об изменении имени потока. |
Комментарии
Среда CLR вызывает метод в интерфейсе ICorProfilerCallback (или ICorProfilerCallback2), чтобы уведомить профилировщика о возникновении события, на которое подписан профилировщик. Это основной интерфейс обратного вызова, через который среда CLR взаимодействует с профилировщиком кода.
Профилировщик кода должен реализовывать методы ICorProfilerCallback интерфейса . Для платформа .NET Framework 2.0 и более поздних версий профилировщик также должен реализовывать ICorProfilerCallback2 методы . Каждая реализация метода должна возвращать HRESULT со значением S_OK при успешном выполнении или E_FAIL при сбое. В настоящее время среда CLR игнорирует HRESULT, возвращаемое каждым обратным вызовом, за исключением ICorProfilerCallback::ObjectReferences.
Профилировщик кода должен зарегистрировать в реестре Microsoft Windows свой COM-объект, реализующий ICorProfilerCallback интерфейсы и ICorProfilerCallback2 . Профилировщик кода подписывается на события, для которых он хочет получать уведомления, вызывая метод ICorProfilerInfo::SetEventMask. Обычно это делается в реализации профилировщика ICorProfilerCallback::Initialize. Затем профилировщик может получать уведомление от среды выполнения, когда событие вот-вот произойдет или только что произошло в процессе выполнения среды выполнения.
Примечание
Профилировщик регистрирует один COM-объект. Если профилировщик предназначен для платформа .NET Framework версии 1.0 или 1.1, этот COM-объект должен реализовывать только методы ICorProfilerCallback. Если он предназначен для платформа .NET Framework версии 2.0 и более поздних версий, COM-объект также должен реализовывать методы ICorProfilerCallback2.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorProf.idl, CorProf.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: доступно с версии 2.0