DkmPendingFunctionBreakpoint Класс

Определение

Ожидание точки останова, запрашиваемой для привязки к элементам кода с указанным именем функции.

public ref class DkmPendingFunctionBreakpoint : Microsoft::VisualStudio::Debugger::Breakpoints::DkmPendingBreakpoint
[System.Runtime.InteropServices.Guid("b463b9e3-5b9f-e0e4-f0e9-4f38c63ef443")]
public class DkmPendingFunctionBreakpoint : Microsoft.VisualStudio.Debugger.Breakpoints.DkmPendingBreakpoint
[<System.Runtime.InteropServices.Guid("b463b9e3-5b9f-e0e4-f0e9-4f38c63ef443")>]
type DkmPendingFunctionBreakpoint = class
    inherit DkmPendingBreakpoint
Public Class DkmPendingFunctionBreakpoint
Inherits DkmPendingBreakpoint
Наследование
Атрибуты

Свойства

CompilerId

Определяет исходный язык (например, C#) и поставщик компилятора (например, Microsoft), к которому должна быть привязана точка останова. "LanguageId" может быть оставлен как GUID. Empty, чтобы указать, что точка останова должна быть привязана ко всем языкам. "VendorId" почти всегда остается как GUID. Empty, что означает, что известен только язык (не компилятор).

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

Имя функции для привязки.

IsBarrier

Указывает, является ли эта точка останова барьером, который должен быть установлен на оборудовании. это работает для отладки GPU.

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

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

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

Строка функции для привязки.

ModuleName

Используемых Имя модуля для поиска точки останова. Если значение равно null, поиск выполняется во всех модулях.

Process

Дкмпроцесс представляет целевой процесс, который отлаживается. Отладчик выполняет обработку ошибок, поэтому это основная единица отладки. Дкмпроцесс может представлять системный процесс или виртуальный процесс, например Мини-дампы.

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

Определяет источник объекта. Саурцеидс используются для включения фильтрации в сценариях, когда несколько компонентов могут создавать экземпляры класса. Например, идентификаторы источников можно использовать, чтобы определить, поступает ли точка останова из AD7 AL (например, точки останова пользователя или другой точки останова, видимой на уровне SDM) вместо точки останова, которая может быть создана другим компонентом (например, внутренняя точка останова, используемая для пошагового выполнения).

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

Дкмпендингбреакпоинт является абстрактным базовым классом. Это перечисление указывает, какой производный класс этот объект является экземпляром.

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

Используемых Поток, в котором должна срабатывать эта точка останова. Если значение равно null, точка останова будет срабатывать во всех потоках.

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

Идентификатор GUID, который однозначно определяет этот ожидающий объект точки останова.

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

Методы

Close()

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

Объекты Дкмпендингбреакпоинт автоматически закрываются при закрытии связанных с ними объектов Дкмпроцесс.

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

(Унаследовано от DkmPendingBreakpoint)
Create(DkmProcess, Guid, DkmCompilerId, DkmThread, Boolean, String, String, UInt32, DkmDataItem)

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

Disable(DkmWorkList, DkmCompletionRoutine<DkmDisablePendingBreakpointAsyncResult>)

Отключите объект ожидающей точки останова, чтобы он больше не запустится. Если ожидающая точка останова уже привязана, все привязанные точки останова будут неявно отключены.

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

Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000).

(Унаследовано от DkmPendingBreakpoint)
Enable(DkmWorkList, DkmCompletionRoutine<DkmEnablePendingBreakpointAsyncResult>)

Задает состояние ожидающей точки останова, чтобы в будущем могли попасть экземпляры точки останова, привязку к которой будет привязано. Если ожидающая точка останова еще не зарегистрирована, этот метод также будет регистрировать точку останова. Регистрация ожидающей точки останова состоит из попытки разрешить точку останова для всех загруженных в данный момент модулей и добавления точки останова в список точек останова, привязок которых будет диспетчер точек останова при любой загрузке модуля. Если ожидающая точка останова уже зарегистрирована, существующие привязанные точки останова не будут автоматически включены. Связанные точки останова должны быть включены отдельно.

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

Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000).

(Унаследовано от DkmPendingBreakpoint)
Enroll(DkmWorkList, DkmCompletionRoutine<DkmEnrollPendingBreakpointAsyncResult>)

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

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

Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000).

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

Жетбаундбреакпоинтс перечисляет элементы Дкмбаундбреакпоинт этого объекта Дкмпендингбреакпоинт.

(Унаследовано от DkmPendingBreakpoint)
GetDataItem<T>()

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

(Унаследовано от DkmDataContainer)
OnBreakpointBound(DkmBoundBreakpoint[])

Уведомление от диспетчера точек останова при привязке точки останова. В случае с пользовательскими точками останова это уведомление будет отправлено в AD7 AL, а AD7 AL запустит IDebugBreakpointBoundEvent2 в пользовательском интерфейсе отладчика Visual Studio.

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointMessage(DkmBreakpointMessageLevel, String)

Уведомление от диспетчера точек останова относительно состояния привязки точки останова.

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointUnbound(DkmBoundBreakpoint[], DkmBreakpointUnboundReason)

Уведомление от диспетчера точек останова, которое указывает на то, что данная точка останова является непривязанной.

(Унаследовано от DkmPendingBreakpoint)
OnHitWithError(DkmThread, Boolean, DkmBreakpointMessageLevel, String)

Вызов события Бреакпоинситвисеррор. Компоненты, реализующие интерфейс приемника событий, получат уведомление о событии. Этот метод поставит в очередь событие, и элемент управления немедленно вернется вызывающему объекту.

Этот API появился в Visual Studio 16 RTM (Дкмапиверсион. VS16RTM).

(Унаследовано от DkmPendingBreakpoint)
RemoveDataItem<T>()

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

(Унаследовано от DkmDataContainer)
SetCondition(DkmWorkList, DkmBreakpointCondition, DkmCompletionRoutine<DkmSetPendingBreakpointConditionAsyncResult>)

Инициализируйте, обновляйте или снимайте условия на уровне языка для всех связанных точек останова этой точки останова условия. Если одна и та же точка останова имеет и условие уровня языка, и условие числа попаданий, то сначала применяется условие уровня языка.

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

Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000).

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

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

(Унаследовано от DkmDataContainer)
SetHitCountCondition(DkmWorkList, DkmBreakpointHitCountCondition, DkmCompletionRoutine<DkmSetPendingBreakpointHitCountConditionAsyncResult>)

Инициализируйте, обновляйте или очищает условие числа попаданий для всех привязанных точек останова этой ожидающей точки останова. Если одна и та же точка останова имеет и условие уровня языка, и условие числа попаданий, то сначала применяется условие уровня языка.

Обратите внимание, что условие числа попаданий действует независимо от каждой привязанной точки останова, а не статистической обработки в ожидающей точке останова. Например, если число попаданий настроено на останов при достижении #2, а точка останова — в два отдельных местоположения, каждое из которых достигает точки останова, Пользовательский интерфейс по-прежнему не перейдет в режим прерывания, поскольку ни одна из отдельных привязанных точек останова не будет нажата дважды.

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

Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000).

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

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

IDisposable.Dispose() (Унаследовано от DkmPendingBreakpoint)

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