Метод ICorProfilerCallback::RootReferences
Уведомляет профилировщик сведениями о корневых ссылках после сборки мусора.
Синтаксис
HRESULT RootReferences(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[] );
Параметры
cRootRefs
[in] Количество ссылок в массиве rootRefIds
.
rootRefIds
[in] Массив идентификаторов объектов, ссылающихся на статический объект или объект в стеке.
Комментарии
И RootReferences
ICorProfilerCallback2::RootReferences2 вызываются для уведомления профилировщика. Профилировщики обычно реализуют один или другой, но не оба, так как передаваемые RootReferences2
сведения являются надмножеством , переданными в RootReferences
.
Массив может rootRefIds
содержать объект NULL. Например, все ссылки на объекты, объявленные в стеке, обрабатываются сборщиком мусора как корневые и всегда будут сообщаться.
Идентификаторы объектов, возвращаемые RootReferences
, недопустимы во время самого обратного вызова, так как сборка мусора может находиться в середине перемещения объектов со старых адресов на новые. Поэтому профилировщики не должны пытаться проверять объекты во время RootReferences
вызова. При вызове метода ICorProfilerCallback2::GarbageCollectionFinished все объекты были перемещены в новое расположение и могут быть безопасно проверены.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorProf.idl, CorProf.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: доступно с версии 2.0