DkmWorkList Класс

Определение

Коллекция асинхронных рабочих элементов, обрабатываемых вместе. Рабочие элементы добавляются путем вызова любого из асинхронных методов в этом API. Рабочие элементы могут добавляться свободно, пока не начнется выполнение списка трудоемких элементов. После начала выполнения дополнительные действия могут быть добавлены только из реализации интерфейса обработки рабочих элементов или из подпрограммы завершения.

public ref class DkmWorkList sealed : MarshalByRefObject
public sealed class DkmWorkList : MarshalByRefObject
public sealed class DkmWorkList
type DkmWorkList = class
    inherit MarshalByRefObject
type DkmWorkList = class
Public NotInheritable Class DkmWorkList
Inherits MarshalByRefObject
Public NotInheritable Class DkmWorkList
Наследование
DkmWorkList
Наследование
DkmWorkList

Свойства

IsCanceled

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

IsCurrentInstanceCanceled

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

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

Методы

BeginExecution()

Начните выполнение элементов в этом рабочем списке. Этот API будет немедленно возвращать результаты, а подпрограммы завершения будут запущены для возврата результатов. Обратные вызовы будут запускаться по мере завершения (неупорядоченных) результатов.

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

BeginExecution(DkmWorkListExecutionThread)

Начните выполнение элементов в этом рабочем списке. Этот API будет немедленно возвращать результаты, а подпрограммы завершения будут запущены для возврата результатов. Обратные вызовы будут запускаться по мере завершения (неупорядоченных) результатов.

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

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

BeginExecution(DkmWorkListExecutionThread, DkmWorkListPriority)

Начните выполнение элементов в этом рабочем списке. Этот API будет немедленно возвращать результаты, а подпрограммы завершения будут запущены для возврата результатов. Обратные вызовы будут запускаться по мере завершения (неупорядоченных) результатов.

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

Этот API появился в Visual Studio 15 с обновлением 8 (DkmApiVersion.VS15Update8).

Cancel()

Отмена выполнения этого списка работ. Этот API возвращается после остановки всей работы в этой рабочей очереди (рабочий список будет отменен или завершен). Если рабочий список уже отменен, запрос игнорируется. Этот метод может вызываться только компонентом, создавший объект .

Примечание для компонентов, объявленных как "Синхронизированные" в конфигурации компонента: вызов этого API может неявно освободить, а затем повторно получить блокировку вокруг компонента. Помните о возможных изменениях состояния.

Cancel(Boolean)

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

Этот API был добавлен в Visual Studio 15 с обновлением 7 (DkmApiVersion.VS15Update7)

Create(DkmWorkListCompletionRoutine)

Создает пустой объект списка трудоемких работ. Вызывающие операторы должны добавить операции в рабочий список, а затем начать выполнение (BeginExecution или Execute).

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

Create(DkmWorkListCompletionRoutine, DkmWorkListProgressRoutine)

Создает пустой объект списка трудоемких работ. Вызывающие операторы должны добавить операции в рабочий список, а затем начать выполнение (BeginExecution или Execute).

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

Execute()

Синхронное выполнение всех элементов в списке работ и возврат после завершения обработки или отмены обработки, включая выполнение всех процедур завершения. Обратные вызовы срабатывают по мере завершения (неупорядоченных) результатов.

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

SetCurrentInstanceProgress(Boolean, Int32, String, String)

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

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

SetDescription(String)

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

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

SetProgress(Boolean, Int32, String, String)

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

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

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