Udostępnij za pośrednictwem


Task.WhenAny Metoda

Definicja

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

Przeciążenia

WhenAny(Task, Task)

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

WhenAny(Task[])

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

WhenAny(ReadOnlySpan<Task>)

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

WhenAny(IEnumerable<Task>)

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

WhenAny(Task, Task)

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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)

Parametry

task1
Task

Pierwsze zadanie do oczekiwania na ukończenie.

task2
Task

Drugie zadanie czeka na zakończenie.

Zwraca

Nowe zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Jego Result jest zadaniem, które zostało ukończone jako pierwsze.

Wyjątki

task1 lub task2null.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z Result ustawionym na pierwsze zadanie do ukończenia. Wartość wyniku jest true nawet wtedy, gdy pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Dotyczy

WhenAny(Task[])

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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)

Parametry

tasks
Task[]

Zadania do oczekiwania na ukończenie.

Zwraca

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zadania zwracanego to zadanie, które zostało ukończone.

Wyjątki

Argument tasks miał wartość null.

Tablica tasks zawierała zadanie o wartości null lub była pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z Result ustawionym na pierwsze zadanie do ukończenia. Jest to prawdą, nawet jeśli pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Dotyczy

WhenAny(ReadOnlySpan<Task>)

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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 (scoped 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)

Parametry

tasks
ReadOnlySpan<Task>

Zadania do oczekiwania na ukończenie.

Zwraca

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zwracanego zadania to zadanie, które zostało ukończone.

Wyjątki

Tablica tasks zawiera zadanie null lub jest pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z ustawionym wynikiem na pierwsze zadanie do ukończenia. Jest to true nawet wtedy, gdy pierwsze zadanie do wykonania zakończyło się w stanie Anulowane lub Uszkodzone.

Dotyczy

WhenAny(IEnumerable<Task>)

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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)

Parametry

tasks
IEnumerable<Task>

Zadania do oczekiwania na ukończenie.

Zwraca

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zadania zwracanego to zadanie, które zostało ukończone.

Wyjątki

Argument tasks został null.

Tablica tasks zawierała zadanie o wartości null lub była pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z ustawionym wynikiem na pierwsze zadanie do wykonania. Jest to prawdą, nawet jeśli pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Dotyczy

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

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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))

Parametry typu

TResult

Typ ukończonego zadania.

Parametry

tasks
IEnumerable<Task<TResult>>

Zadania do oczekiwania na ukończenie.

Zwraca

Task<Task<TResult>>

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zadania zwracanego to zadanie, które zostało ukończone.

Wyjątki

Argument tasks został null.

Tablica tasks zawierała zadanie o wartości null lub była pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z Result ustawionym na pierwsze zadanie do ukończenia. Jest to prawdą, nawet jeśli pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Dotyczy

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

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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> (scoped 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))

Parametry typu

TResult

Parametry

tasks
ReadOnlySpan<Task<TResult>>

Zadania do oczekiwania na ukończenie.

Zwraca

Task<Task<TResult>>

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zwracanego zadania to zadanie, które zostało ukończone.

Wyjątki

Tablica tasks zawiera zadanie null lub jest pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z ustawionym wynikiem na pierwsze zadanie do ukończenia. Jest to true nawet wtedy, gdy pierwsze zadanie do wykonania zakończyło się w stanie Anulowane lub Uszkodzone.

Dotyczy

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

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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))

Parametry typu

TResult

Typ ukończonego zadania.

Parametry

tasks
Task<TResult>[]

Zadania do oczekiwania na ukończenie.

Zwraca

Task<Task<TResult>>

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Wynik zadania zwracanego to zadanie, które zostało ukończone.

Wyjątki

Argument tasks miał wartość null.

Tablica tasks zawierała zadanie o wartości null lub była pusta.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z Result ustawionym na pierwsze zadanie do ukończenia. Jest to prawdą, nawet jeśli pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Dotyczy

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

Źródło:
Task.cs
Źródło:
Task.cs
Źródło:
Task.cs

Tworzy zadanie, które zostanie wykonane po zakończeniu któregokolwiek z dostarczonych zadań.

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))

Parametry typu

TResult

Typ wyniku zwróconego zadania.

Parametry

task1
Task<TResult>

Pierwsze zadanie do oczekiwania na ukończenie.

task2
Task<TResult>

Drugie zadanie czeka na zakończenie.

Zwraca

Task<Task<TResult>>

Zadanie reprezentujące ukończenie jednego z dostarczonych zadań. Zwrócone zadanie TResult to zadanie, które zostało ukończone jako pierwsze.

Wyjątki

task1 lub task2null.

Uwagi

Zwrócone zadanie zostanie ukończone po zakończeniu któregokolwiek z dostarczonych zadań. Zwrócone zadanie zawsze kończy się w stanie RanToCompletion z Result ustawionym na pierwsze zadanie do ukończenia. Wartość wyniku jest true nawet wtedy, gdy pierwsze zadanie do wykonania zakończyło się w stanie Canceled lub Faulted.

Napiwek

W każdej przeciążonej wersji task.WhenAny(), gdy ta metoda zwraca pierwsze ukończone zadanie, inne zadania będą kontynuowane do ukończenia, nawet każdy z nich ukończony w stanie Canceled lub Faulted. Dlatego jeśli to zachowanie nie jest pożądane, możesz anulować wszystkie pozostałe zadania po zakończeniu pierwszego zadania.

Dotyczy