Share via


DkmWorkList Klasse

Definition

Sammlung von asynchronen Arbeitselementen, die zusammen verarbeitet werden. Arbeitselemente werden durch Aufrufen einer der asynchronen Methoden in dieser API angefügt. Arbeitselemente können frei angefügt werden, bis die Arbeitsliste mit der Ausführung beginnt. Sobald die Ausführung begonnen hat, können zusätzliche Arbeiten nur aus der Implementierung einer Arbeitselementverarbeitungsschnittstelle oder aus einer Vervollständigungsroutine angefügt werden.

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
Vererbung
DkmWorkList
Vererbung
DkmWorkList

Eigenschaften

IsCanceled

Mit dieser Eigenschaft kann eine Komponente, die ein Arbeitselement verarbeitet, bestimmen, ob es abgebrochen wurde, oder für eine Vervollständigungsroutine ermittelt, ob der Vorgang abgebrochen wurde.

IsCurrentInstanceCanceled

Mit dieser Eigenschaft kann eine Komponente bestimmen, ob der aktuelle Vorgang abgebrochen werden soll. Dies gibt true zurück, wenn von einem Thread aufgerufen wird, der derzeit eine Arbeitsliste verarbeitet, und wenn diese Arbeitsliste abgebrochen wurde.

Dies wird ausgelöst, wenn sie von einer Vervollständigungsroutine oder von einem Thread aufgerufen wird, der derzeit keinen Schnittstellenaufruf verarbeitet.

Methoden

BeginExecution()

Beginnen Sie mit der Ausführung der Elemente in dieser Arbeitsliste. Diese API wird sofort zurückgegeben, und Vervollständigungsroutinen werden ausgelöst, um Ergebnisse zurückzugeben. Rückrufe werden ausgelöst, wenn die Ergebnisse abgeschlossen sind (ungeordnet).

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

BeginExecution(DkmWorkListExecutionThread)

Beginnen Sie mit der Ausführung der Elemente in dieser Arbeitsliste. Diese API wird sofort zurückgegeben, und Vervollständigungsroutinen werden ausgelöst, um Ergebnisse zurückzugeben. Rückrufe werden ausgelöst, wenn die Ergebnisse abgeschlossen sind (ungeordnet).

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Diese API wurde in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) eingeführt.

BeginExecution(DkmWorkListExecutionThread, DkmWorkListPriority)

Beginnen Sie mit der Ausführung der Elemente in dieser Arbeitsliste. Diese API wird sofort zurückgegeben, und Vervollständigungsroutinen werden ausgelöst, um Ergebnisse zurückzugeben. Rückrufe werden ausgelöst, wenn die Ergebnisse abgeschlossen sind (ungeordnet).

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt.

Cancel()

Abbrechen der Ausführung dieser Arbeitsliste. Diese API wird zurückgegeben, sobald alle Arbeiten an dieser Arbeitswarteschlange beendet wurden (Arbeitsliste wird abgebrochen oder abgeschlossen). Die Anforderung wird ignoriert, wenn die Arbeitsliste bereits abgebrochen wurde. Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Hinweis für Komponenten, die in der Komponentenkonfiguration als "synchronisiert" deklariert wurden: Beim Aufrufen dieser API kann die Sperre für Ihre Komponente implizit freigegeben und dann erneut ausgeführt werden. Achten Sie auf mögliche Zustandsänderungen.

Cancel(Boolean)

Abbrechen der Ausführung dieser Arbeitsliste. Die Anforderung wird ignoriert, wenn die Arbeitsliste bereits abgebrochen wurde. Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Diese API wurde in Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7) hinzugefügt.

Create(DkmWorkListCompletionRoutine)

Erstellt ein neues leeres Arbeitslistenobjekt. Aufrufer sollten Vorgänge an die Arbeitsliste anfügen und dann mit der Ausführung ("BeginExecution" oder "Execute") beginnen.

Nach der Erstellung besteht ein WorkList-Objekt weiterhin, bis die Ausführung abgeschlossen ist oder die Anforderung abgebrochen wird. Daher sollten Aufrufer sicherstellen, dass "Cancel" im Falle eines Fehlers aufgerufen wird.

Create(DkmWorkListCompletionRoutine, DkmWorkListProgressRoutine)

Erstellt ein neues leeres Arbeitslistenobjekt. Aufrufer sollten Vorgänge an die Arbeitsliste anfügen und dann mit der Ausführung ("BeginExecution" oder "Execute") beginnen.

Nach der Erstellung besteht ein WorkList-Objekt weiterhin, bis die Ausführung abgeschlossen ist oder die Anforderung abgebrochen wird. Daher sollten Aufrufer sicherstellen, dass "Cancel" im Falle eines Fehlers aufgerufen wird.

Execute()

Führen Sie alle Elemente in der Arbeitsliste synchron aus, und kehren Sie zurück, wenn die Verarbeitung abgeschlossen ist oder abgebrochen wurde, einschließlich des Auslösens aller Vervollständigungsroutinen. Rückrufe werden ausgelöst, wenn die Ergebnisse abgeschlossen (ungeordnet) sind.

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat. Diese Methode wird ausgelöst, wenn die Ausführung bereits ausgeführt wird.

SetCurrentInstanceProgress(Boolean, Int32, String, String)

Legt den Fortschritt fest, der für den aktuell ausgeführten Arbeitsvorrat gemeldet wird. Die Statusberichterstattung wird in Remotingszenarien nicht unterstützt.

Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt.

SetDescription(String)

Legt eine Zeichenfolge fest, die verwendet werden kann, um die vom Arbeitslisten ausgeführten Vorgänge zu beschreiben. Dies kann angezeigt werden, wenn die Ausführung anderer Vorgänge durch diesen Arbeitsvorrat blockiert wird.

Diese API wurde in Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7) eingeführt.

SetProgress(Boolean, Int32, String, String)

Legt den Fortschritt fest, der für den Arbeitsvorrat gemeldet wird. Die Statusberichterstattung wird in Remotingszenarien nicht unterstützt.

Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt.

Gilt für: