DkmManagedHeapWalker Класс

Определение

DkmManagedHeapWalker представляет перечислитель для управляемой кучи.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

public ref class DkmManagedHeapWalker : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("dca8e5e0-6bfc-1a87-5ae8-4c165856c3cb")]
public class DkmManagedHeapWalker : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("dca8e5e0-6bfc-1a87-5ae8-4c165856c3cb")>]
type DkmManagedHeapWalker = class
    inherit DkmDataContainer
    interface IDisposable
Public Class DkmManagedHeapWalker
Inherits DkmDataContainer
Implements IDisposable
Наследование
DkmManagedHeapWalker
Наследование
DkmManagedHeapWalker
Атрибуты
Реализации

Свойства

IsUnloaded

Возвращает значение true, если для этого объекта было вызвано событие "unloaded" (например, вызывается DkmThread::Unload) или если объект был закрыт. Обратите внимание, что при проверке этого состояния необходимо соблюдать осторожность, так как без синхронизации возвращаемое состояние может быть не точным после прочтения инструкции.

(Унаследовано от DkmDataContainer)
RuntimeInstance

Класс DkmRuntimeInstance представляет среду выполнения, которая загружается в DkmProcess и содержит код для отладки.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

UniqueId

Guid, который однозначно идентифицирует этот DkmManagedHeapWalker.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

Методы

Close()

Закрывает экземпляр объекта DkmManagedHeapWalker. Это приведет к освобождению всех ресурсов, связанных с этим объектом, во всех компонентах. К ним относятся ресурсы в пределах компьютера или управляемых или собственных границ маршалинга.

Объекты DkmManagedHeapWalker автоматически закрываются при закрытии связанного с ними объекта DkmRuntimeInstance.

Этот метод может вызываться только компонентом, создавший объект .

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

Create(DkmRuntimeInstance, DkmDataItem)

Create новый экземпляр объекта DkmManagedHeapWalker. Вызывающий объект отвечает за закрытие созданного объекта после их завершения.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

GetDataItem<T>()

Возвращает экземпляр T, который был добавлен в этот экземпляр контейнера. Если этот контейнер не содержит "T", эта функция возвращает значение NULL.

(Унаследовано от DkmDataContainer)
GetNativeTypeId()

Возвращает идентификатор поддельного типа для собственных объектов. Не следует передавать в API-интерфейсы ICorDebug.

Этот API появился в Visual Studio 17 с обновлением 7 (DkmApiVersion.VS17Update7).

GetPathsToRoot(DkmWorkList, UInt64, Boolean, DkmCompletionRoutine<DkmGetPathsToRootAsyncResult>)

Возвращает пути к корню для указанного объекта.

Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен с помощью процедуры завершения.

Этот API появился в Visual Studio 17 с обновлением 2 (DkmApiVersion.VS17Update2).

GetSegments()

Возвращает список сегментов в куче.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

GetStringTypeId()

Возвращает идентификатор типа для System.String.

Этот API появился в Visual Studio 17 с обновлением 5 (DkmApiVersion.VS17Update5).

GetTypeNames(DkmManagedTypeId[])

Возвращает имена типов для заданных идентификаторов типов.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

InitializeHeapObjectWalk()

Подготавливает перечислитель для прохода объектов в куче, возвращает ошибку, если куча не может быть перечислена.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

InitializeHeapReferenceWalk()

Подготавливает перечисление для создания отчетов о ссылках между объектами в куче, возвращает ошибку, если куча не может быть перечислена.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

InitializeHeapRootsWalk()

Подготавливает перечисление для создания корней отчетов в куче, возвращает ошибку, если куча не может быть перечислена.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextNativeObjects(UInt32)

Возвращает следующий набор смоделированных собственных объектов из перечисления кучи памяти.

Этот API появился в Visual Studio 17 с обновлением 7 (DkmApiVersion.VS17Update7).

NextObjects(UInt32)

Возвращает следующий набор объектов из перечисления .

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextReferences(UInt32)

Возвращает следующий набор из перечисления.

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextRoots(UInt32)

Возвращает следующий набор корней из перечисления .

Этот API появился в Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

RemoveDataItem<T>()

Удалите экземпляр T из этого контейнера. Обычно не требуется вызывать этот метод, так как контейнер данных автоматически очищается при закрытии объекта.

(Унаследовано от DkmDataContainer)
SetDataItem<T>(DkmDataCreationDisposition, T)

Поместите новый элемент в контейнер данных.

(Унаследовано от DkmDataContainer)

Явные реализации интерфейса

IDisposable.Dispose()

Будет добавлено.

Применяется к