Freigeben über


Task.WhenAny Methode

Definition

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

Überlädt

WhenAny(Task, Task)

Erstellt einen Task, der abgeschlossen wird, wenn einer der angegebenen Tasks abgeschlossen ist.

WhenAny(Task[])

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

WhenAny(ReadOnlySpan<Task>)
WhenAny(IEnumerable<Task>)

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

WhenAny<TResult>(IEnumerable<Task<TResult>>)

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)
WhenAny<TResult>(Task<TResult>[])

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

WhenAny<TResult>(Task<TResult>, Task<TResult>)

Erstellt einen Task, der abgeschlossen wird, wenn einer der angegebenen Tasks abgeschlossen ist.

WhenAny(Task, Task)

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt einen Task, der abgeschlossen wird, wenn einer der angegebenen Tasks abgeschlossen ist.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(System::Threading::Tasks::Task ^ task1, System::Threading::Tasks::Task ^ task2);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (System.Threading.Tasks.Task task1, System.Threading.Tasks.Task task2);
static member WhenAny : System.Threading.Tasks.Task * System.Threading.Tasks.Task -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (task1 As Task, task2 As Task) As Task(Of Task)

Parameter

task1
Task

Der erste Task, der auf seinen Abschluss wartet.

task2
Task

Der zweite Task, der auf seinen Abschluss wartet.

Gibt zurück

Ein neuer Task, der den Abschluss eines der angegebenen Tasks darstellt. Dessen Result ist der Task, der zuerst abgeschlossen wurde.

Ausnahmen

task1 oder task2 entsprach null.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer mit dem RanToCompletion Status, dessen Result Wert auf die erste abgeschlossene Aufgabe festgelegt ist. Der Ergebniswert ist auch dann, wenn die erste abgeschlossene Aufgabe im Canceled Zustand oder Faulted beendet wurdetrue.

Gilt für:

WhenAny(Task[])

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(... cli::array <System::Threading::Tasks::Task ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (params System.Threading.Tasks.Task[] tasks);
static member WhenAny : System.Threading.Tasks.Task[] -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (ParamArray tasks As Task()) As Task(Of Task)

Parameter

tasks
Task[]

Die Aufgaben, auf deren Abschluss gewartet werden soll.

Gibt zurück

Eine Aufgabe, die den Abschluss einer der angegebenen Aufgaben darstellt. Das zurückgegebene Ergebnis der Aufgabe ist die Aufgabe, die abgeschlossen wurde.

Ausnahmen

Das tasks-Argument war null.

Das Array tasks enthielt eine NULL-Aufgabe oder war leer.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer mit dem RanToCompletion Status, dessen Result Wert auf die erste abgeschlossene Aufgabe festgelegt ist. Dies gilt auch dann, wenn die erste abgeschlossene Aufgabe im Canceled -Zustand oder Faulted beendet wurde.

Gilt für:

WhenAny(ReadOnlySpan<Task>)

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(ReadOnlySpan<System::Threading::Tasks::Task ^> tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (ReadOnlySpan<System.Threading.Tasks.Task> tasks);
static member WhenAny : ReadOnlySpan<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (tasks As ReadOnlySpan(Of Task)) As Task(Of Task)

Parameter

Gibt zurück

Gilt für:

WhenAny(IEnumerable<Task>)

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(System::Collections::Generic::IEnumerable<System::Threading::Tasks::Task ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (System.Collections.Generic.IEnumerable<System.Threading.Tasks.Task> tasks);
static member WhenAny : seq<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (tasks As IEnumerable(Of Task)) As Task(Of Task)

Parameter

tasks
IEnumerable<Task>

Die Aufgaben, auf deren Abschluss gewartet werden soll.

Gibt zurück

Eine Aufgabe, die den Abschluss einer der angegebenen Aufgaben darstellt. Das zurückgegebene Ergebnis der Aufgabe ist die Aufgabe, die abgeschlossen wurde.

Ausnahmen

Das tasks-Argument lautete null.

Das Array tasks enthielt eine NULL-Aufgabe oder war leer.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer im RanToCompletion Zustand, wobei das Ergebnis auf die erste abgeschlossene Aufgabe festgelegt ist. Dies gilt auch dann, wenn die erste abgeschlossene Aufgabe im Canceled -Zustand oder Faulted beendet wurde.

Gilt für:

WhenAny<TResult>(IEnumerable<Task<TResult>>)

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(System::Collections::Generic::IEnumerable<System::Threading::Tasks::Task<TResult> ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (System.Collections.Generic.IEnumerable<System.Threading.Tasks.Task<TResult>> tasks);
static member WhenAny : seq<System.Threading.Tasks.Task<'Result>> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (tasks As IEnumerable(Of Task(Of TResult))) As Task(Of Task(Of TResult))

Typparameter

TResult

Der Typ der abgeschlossenen Aufgabe.

Parameter

tasks
IEnumerable<Task<TResult>>

Die Aufgaben, auf deren Abschluss gewartet werden soll.

Gibt zurück

Task<Task<TResult>>

Eine Aufgabe, die den Abschluss einer der angegebenen Aufgaben darstellt. Das zurückgegebene Ergebnis der Aufgabe ist die Aufgabe, die abgeschlossen wurde.

Ausnahmen

Das tasks-Argument lautete null.

Das Array tasks enthielt eine NULL-Aufgabe oder war leer.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer mit dem RanToCompletion Status, dessen Result Wert auf die erste abgeschlossene Aufgabe festgelegt ist. Dies gilt auch dann, wenn die erste abgeschlossene Aufgabe im Canceled -Zustand oder Faulted beendet wurde.

Gilt für:

WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(ReadOnlySpan<System::Threading::Tasks::Task<TResult> ^> tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (ReadOnlySpan<System.Threading.Tasks.Task<TResult>> tasks);
static member WhenAny : ReadOnlySpan<System.Threading.Tasks.Task<'Result>> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (tasks As ReadOnlySpan(Of Task(Of TResult))) As Task(Of Task(Of TResult))

Typparameter

TResult

Parameter

tasks
ReadOnlySpan<Task<TResult>>

Gibt zurück

Task<Task<TResult>>

Gilt für:

WhenAny<TResult>(Task<TResult>[])

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt eine Aufgabe, die abgeschlossen wird, wenn eine der angegebenen Aufgaben abgeschlossen ist.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(... cli::array <System::Threading::Tasks::Task<TResult> ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (params System.Threading.Tasks.Task<TResult>[] tasks);
static member WhenAny : System.Threading.Tasks.Task<'Result>[] -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (ParamArray tasks As Task(Of TResult)()) As Task(Of Task(Of TResult))

Typparameter

TResult

Der Typ der abgeschlossenen Aufgabe.

Parameter

tasks
Task<TResult>[]

Die Aufgaben, auf deren Abschluss gewartet werden soll.

Gibt zurück

Task<Task<TResult>>

Eine Aufgabe, die den Abschluss einer der angegebenen Aufgaben darstellt. Das zurückgegebene Ergebnis der Aufgabe ist die Aufgabe, die abgeschlossen wurde.

Ausnahmen

Das tasks-Argument war null.

Das Array tasks enthielt eine NULL-Aufgabe oder war leer.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer mit dem RanToCompletion Status, dessen Result Wert auf die erste abgeschlossene Aufgabe festgelegt ist. Dies gilt auch dann, wenn die erste abgeschlossene Aufgabe im Canceled -Zustand oder Faulted beendet wurde.

Gilt für:

WhenAny<TResult>(Task<TResult>, Task<TResult>)

Quelle:
Task.cs
Quelle:
Task.cs
Quelle:
Task.cs

Erstellt einen Task, der abgeschlossen wird, wenn einer der angegebenen Tasks abgeschlossen ist.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(System::Threading::Tasks::Task<TResult> ^ task1, System::Threading::Tasks::Task<TResult> ^ task2);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (System.Threading.Tasks.Task<TResult> task1, System.Threading.Tasks.Task<TResult> task2);
static member WhenAny : System.Threading.Tasks.Task<'Result> * System.Threading.Tasks.Task<'Result> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (task1 As Task(Of TResult), task2 As Task(Of TResult)) As Task(Of Task(Of TResult))

Typparameter

TResult

Der Typ des Ergebnisses des zurückgegebenen Vorgangs.

Parameter

task1
Task<TResult>

Der erste Task, der auf seinen Abschluss wartet.

task2
Task<TResult>

Der zweite Task, der auf seinen Abschluss wartet.

Gibt zurück

Task<Task<TResult>>

Eine Aufgabe, die den Abschluss einer der angegebenen Aufgaben darstellt. Das zurückgegebene TResult der Aufgabe ist die Aufgabe, die zuerst abgeschlossen wurde.

Ausnahmen

task1 oder task2 entsprach null.

Hinweise

Der zurückgegebene Task wird abgeschlossen, wenn einer der angegebenen Aufgaben abgeschlossen wurde. Die zurückgegebene Aufgabe endet immer mit dem RanToCompletion Status, dessen Result Wert auf die erste abgeschlossene Aufgabe festgelegt ist. Der Ergebniswert ist auch dann, wenn die erste abgeschlossene Aufgabe im Canceled Zustand oder Faulted beendet wurdetrue.

Tipp

Wenn diese Methode in jeder überladenen Version von Task.WhenAny() den ersten abgeschlossenen Vorgang zurückgibt, werden die anderen Aufgaben bis zum Abschluss weiter ausgeführt, auch wenn sie im Canceled Status oder Faulted abgeschlossen sind. Wenn dieses Verhalten also nicht gewünscht ist, sollten Sie alle verbleibenden Aufgaben abbrechen, sobald die erste Aufgabe abgeschlossen ist.

Gilt für: