TaskContinuationOptions Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt das Verhalten für eine Aufgabe an, die mithilfe der methode ContinueWith(Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler) oder ContinueWith(Action<Task<TResult>>, TaskContinuationOptions) erstellt wird.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class TaskContinuationOptions
[System.Flags]
public enum TaskContinuationOptions
[System.Flags]
[System.Serializable]
public enum TaskContinuationOptions
[<System.Flags>]
type TaskContinuationOptions =
[<System.Flags>]
[<System.Serializable>]
type TaskContinuationOptions =
Public Enum TaskContinuationOptions
- Vererbung
- Attribute
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| None | 0 | Wenn keine Fortsetzungsoptionen angegeben werden, wird angegeben, dass das Standardverhalten beim Ausführen einer Fortsetzung verwendet werden soll. Die Fortsetzung wird asynchron ausgeführt, wenn die vorerkennende Aufgabe abgeschlossen wird, unabhängig vom endgültigen Status Eigenschaftswert des Vortags. Wenn es sich bei der Fortsetzung um eine untergeordnete Aufgabe handelt, wird sie als getrennte geschachtelte Aufgabe erstellt. |
| PreferFairness | 1 | Ein Hinweis auf einen TaskScheduler zu planenden Vorgang in der Reihenfolge, in der sie geplant wurden, sodass Vorgänge, die früher geplant werden, schneller ausgeführt werden können, und die später geplanten Vorgänge wahrscheinlicher später ausgeführt werden. |
| LongRunning | 2 | Gibt an, dass eine Fortsetzung ein lang andauernder, kursgekörnter Vorgang ist. Es gibt einen Hinweis darauf TaskScheduler , dass eine Überschreibung garantiert werden kann. |
| AttachedToParent | 4 | Gibt an, dass die Fortsetzung, wenn es sich um eine untergeordnete Aufgabe handelt, an ein übergeordnetes Element in der Aufgabenhierarchie angefügt wird. Die Fortsetzung kann nur dann eine untergeordnete Aufgabe sein, wenn es sich um eine untergeordnete Aufgabe handelt. Standardmäßig wird eine untergeordnete Aufgabe (d. h. eine innere Aufgabe, die von einer äußeren Aufgabe erstellt wird) unabhängig vom übergeordneten Element ausgeführt. Sie können die AttachedToParent Option verwenden, damit die übergeordneten und untergeordneten Aufgaben synchronisiert werden. Wenn eine übergeordnete Aufgabe mit der DenyChildAttach Option konfiguriert ist, hat die AttachedToParent Option in der untergeordneten Aufgabe keine Auswirkung, und die untergeordnete Aufgabe wird als getrennte untergeordnete Aufgabe ausgeführt. Weitere Informationen finden Sie unter Angefügte und getrennte untergeordnete Aufgaben. |
| DenyChildAttach | 8 | Gibt an, dass alle untergeordneten Aufgaben (d. h. jede geschachtelte innere Aufgabe, die von dieser Fortsetzung erstellt wird) erstellt wird, die mit der AttachedToParent Option erstellt wird und versucht, als angefügte untergeordnete Aufgabe auszuführen, nicht an die übergeordnete Aufgabe angefügt werden kann und stattdessen als getrennte untergeordnete Aufgabe ausgeführt wird. Weitere Informationen finden Sie unter Angefügte und getrennte untergeordnete Aufgaben. |
| HideScheduler | 16 | Gibt an, dass von der Fortsetzung erstellte Aufgaben durch Aufrufen von Methoden wie Run(Action) z. B. oder ContinueWith(Action<Task>) Anzeigen des Standardzeitplanrs (Default) anstelle des Zeitplans, für den diese Fortsetzung als aktueller Zeitplan ausgeführt wird. |
| LazyCancellation | 32 | Bei Fortsetzungsabbruch wird verhindert, dass die Fortsetzung abgeschlossen ist, bis der vorerkennte Abschluss abgeschlossen ist. |
| RunContinuationsAsynchronously | 64 | Gibt an, dass die Fortsetzungsaufgabe asynchron ausgeführt werden soll. Diese Option hat Vorrang vor ExecuteSynchronously. |
| NotOnRanToCompletion | 65536 | Gibt an, dass die Fortsetzungsaufgabe nicht geplant werden soll, wenn deren Vorgänger bis zum Abschluss ausgeführt wurde. Ein vorerkennter Vorgang wird abgeschlossen, wenn seine Status Eigenschaft nach Abschluss ist RanToCompletion. Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| NotOnFaulted | 131072 | Gibt an, dass der Fortsetzungsvorgang nicht geplant werden soll, wenn deren Vorgesetzter eine unbehandelte Ausnahme ausgelöst hat. Eine vorerkennte Ausnahme löst eine unbehandelte Ausnahme aus, wenn die Status Eigenschaft nach Abschluss des Vorgangs ist Faulted. Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| OnlyOnCanceled | 196608 | Gibt an, dass die Fortsetzung nur geplant werden soll, wenn deren Vorgänger abgebrochen wurde. Eine vorerkennte Eigenschaft wird abgebrochen, wenn die Status Eigenschaft nach Abschluss des Vorgangs ist Canceled. Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| NotOnCanceled | 262144 | Gibt an, dass der Fortsetzungsvorgang nicht geplant werden soll, wenn deren Vorgänger abgebrochen wurde. Eine vorerkennte Eigenschaft wird abgebrochen, wenn die Status Eigenschaft nach Abschluss des Vorgangs ist Canceled. Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| OnlyOnFaulted | 327680 | Gibt an, dass der Fortsetzungsvorgang nur geplant werden soll, wenn deren vorerkennte Ausnahme eine unbehandelte Ausnahme ausgelöst hat. Eine vorerkennte Ausnahme löst eine unbehandelte Ausnahme aus, wenn die Status Eigenschaft nach Abschluss des Vorgangs ist Faulted. Die OnlyOnFaulted Option garantiert, dass die Exception Eigenschaft im vorerkennten nicht Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| OnlyOnRanToCompletion | 393216 | Gibt an, dass die Fortsetzung nur geplant werden soll, wenn deren Vorgänger bis zum Abschluss ausgeführt wurde. Ein vorerkennter Vorgang wird abgeschlossen, wenn seine Status Eigenschaft nach Abschluss ist RanToCompletion. Diese Option ist für Fortsetzungen mit mehreren Aufgaben ungültig. |
| ExecuteSynchronously | 524288 | Gibt an, dass die Fortsetzungsaufgabe synchron ausgeführt werden soll. Wenn diese Option angegeben ist, wird die Fortsetzung auf demselben Thread ausgeführt, der bewirkt, dass die vorerkennte Aufgabe in den endgültigen Zustand übergeht. Wenn der Vorgänger bereits abgeschlossen ist, wenn die Fortsetzung erstellt wird, wird die Fortsetzung im Thread ausgeführt, der die Fortsetzung erstellt. Wenn die CancellationTokenSource des Vorzeichens in einem Da die Aufgabe synchron ausgeführt wird, muss keine Methode aufgerufen werden, z Wait() . B. um sicherzustellen, dass der aufrufende Thread auf den Abschluss der Aufgabe wartet. |