Udostępnij za pośrednictwem


DkmWorkList Klasa

Definicja

Kolekcja asynchronicznych elementów roboczych, które są przetwarzane razem. Elementy robocze są dołączane przez wywołanie dowolnej z metod asynchronicznych w tym interfejsie API. Elementy robocze mogą być dołączane swobodnie do momentu rozpoczęcia wykonywania listy roboczej. Po rozpoczęciu wykonywania dodatkowe prace mogą być dołączane tylko z implementacji interfejsu przetwarzania elementów roboczych lub z procedury uzupełniania.

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

Właściwości

IsCanceled

Ta właściwość umożliwia składnikowi przetwarzanie elementu roboczego w celu określenia, czy został anulowany, czy też procedury ukończenia w celu określenia, czy operacja została anulowana.

IsCurrentInstanceCanceled

Ta właściwość umożliwia składnikowi określenie, czy bieżąca operacja powinna zostać anulowana. Spowoduje to zwrócenie wartości true po wywołaniu z wątku, który obecnie przetwarza listę roboczą, a po anulowaniu tej listy roboczej.

Spowoduje to zgłoszenie, jeśli zostanie wywołane z procedury ukończenia lub z wątku, który nie przetwarza obecnie wywołania interfejsu.

Metody

BeginExecution()

Rozpocznij wykonywanie elementów na tej liście roboczej. Ten interfejs API zwróci natychmiast i zostaną wyzwolone procedury ukończenia w celu zwrócenia wyników. Wywołania zwrotne zostaną wyzwolone w miarę ukończenia wyników (nieurządkowanych).

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

BeginExecution(DkmWorkListExecutionThread)

Rozpocznij wykonywanie elementów na tej liście roboczej. Ten interfejs API zwróci natychmiast i zostaną wyzwolone procedury ukończenia w celu zwrócenia wyników. Wywołania zwrotne zostaną wyzwolone w miarę ukończenia wyników (nieurządkowanych).

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

BeginExecution(DkmWorkListExecutionThread, DkmWorkListPriority)

Rozpocznij wykonywanie elementów na tej liście roboczej. Ten interfejs API zwróci natychmiast i zostaną wyzwolone procedury ukończenia w celu zwrócenia wyników. Wywołania zwrotne zostaną wyzwolone w miarę ukończenia wyników (nieurządkowanych).

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

Cancel()

Anuluj wykonywanie tej listy roboczej. Ten interfejs API zostanie zwrócony po zatrzymaniu wszystkich prac w tej kolejce pracy (lista robocza zostanie anulowana lub ukończona). Żądanie jest ignorowane, jeśli lista robocza została już anulowana. Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Uwaga dotycząca składników zadeklarowanych jako "Zsynchronizowane" w konfiguracji składnika: wywołanie tego interfejsu API może niejawnie zwolnić, a następnie ponownie uzyskać blokadę wokół składnika. Należy pamiętać o możliwych zmianach stanu.

Cancel(Boolean)

Anuluj wykonywanie tej listy roboczej. Żądanie jest ignorowane, jeśli lista robocza została już anulowana. Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ten interfejs API został dodany w programie Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7)

Create(DkmWorkListCompletionRoutine)

Tworzy nowy pusty obiekt listy roboczej. Obiekty wywołujące powinny dołączać operacje do listy roboczej, a następnie rozpocząć wykonywanie ("BeginExecution" lub "Execute").

Po utworzeniu obiekt WorkList będzie nadal istnieć do momentu ukończenia jego wykonania lub do momentu anulowania żądania. W związku z tym osoby wywołujące powinny upewnić się, że element "Anuluj" jest wywoływany w przypadku awarii.

Create(DkmWorkListCompletionRoutine, DkmWorkListProgressRoutine)

Tworzy nowy pusty obiekt listy roboczej. Obiekty wywołujące powinny dołączać operacje do listy roboczej, a następnie rozpocząć wykonywanie ("BeginExecution" lub "Execute").

Po utworzeniu obiekt WorkList będzie nadal istnieć do momentu ukończenia jego wykonania lub do momentu anulowania żądania. W związku z tym osoby wywołujące powinny upewnić się, że element "Anuluj" jest wywoływany w przypadku awarii.

Execute()

Synchronicznie wykonaj wszystkie elementy na liście roboczej i wróć po zakończeniu przetwarzania lub anulowano, w tym wyzwalanie wszystkich procedur uzupełniania. Wywołania zwrotne będą wyzwalane w miarę ukończenia wyników (nieurządkowanych).

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt. Ta metoda zgłosi błąd, jeśli wykonanie jest już w toku.

SetCurrentInstanceProgress(Boolean, Int32, String, String)

Ustawia postęp, który będzie zgłaszany dla aktualnie wykonywanej listy roboczej. Raportowanie postępu nie jest obsługiwane w scenariuszach komunikacji zdalniej.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

SetDescription(String)

Ustawia ciąg, który może służyć do opisywania operacji wykonywanych przez listę roboczą. Może to być wyświetlane, gdy wykonywanie innych operacji jest blokowane przez tę listę roboczą.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7).

SetProgress(Boolean, Int32, String, String)

Ustawia postęp, który zostanie zgłoszony dla listy roboczej. Raportowanie postępu nie jest obsługiwane w scenariuszach komunikacji zdalniej.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

Dotyczy