Sdílet prostřednictvím


Task.WhenAny Metoda

Definice

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

Přetížení

WhenAny(Task, Task)

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

WhenAny(Task[])

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

WhenAny(ReadOnlySpan<Task>)

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

WhenAny(IEnumerable<Task>)

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

WhenAny(Task, Task)

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

První úkol, který má čekat na dokončení.

task2
Task

Druhý úkol, který bude čekat na dokončení.

Návraty

Nový úkol, který představuje dokončení jednoho ze zadaných úkolů. Jeho Result je úkol, který se dokončil jako první.

Výjimky

task1 nebo task2 byly null.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho Result nastaveným na první úkol, který se má dokončit. Výsledná hodnota se true i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Platí pro

WhenAny(Task[])

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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[]

Úkoly, které mají čekat na dokončení.

Návraty

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Argument tasks měl hodnotu null.

Pole tasks obsahovalo úlohu null nebo byla prázdná.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho Result nastaveným na první úkol, který se má dokončit. To platí i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Platí pro

WhenAny(ReadOnlySpan<Task>)

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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>

Úkoly, které mají čekat na dokončení.

Návraty

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Pole tasks obsahuje null úkol nebo je prázdné.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho výsledkem nastaveným na první úkol, který se má dokončit. To je true i v případě, že první úkol, který se má dokončit, skončil ve stavu Zrušeno nebo Chyba.

Platí pro

WhenAny(IEnumerable<Task>)

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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>

Úkoly, které mají čekat na dokončení.

Návraty

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úlohu null nebo byla prázdná.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho výsledkem nastaveným na první úkol, který se má dokončit. To platí i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Platí pro

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

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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 dokončeného úkolu.

Parametry

tasks
IEnumerable<Task<TResult>>

Úkoly, které mají čekat na dokončení.

Návraty

Task<Task<TResult>>

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úlohu null nebo byla prázdná.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho Result nastaveným na první úkol, který se má dokončit. To platí i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Platí pro

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

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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

Úkoly, které mají čekat na dokončení.

Návraty

Task<Task<TResult>>

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Pole tasks obsahuje null úkol nebo je prázdné.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho výsledkem nastaveným na první úkol, který se má dokončit. To je true i v případě, že první úkol, který se má dokončit, skončil ve stavu Zrušeno nebo Chyba.

Platí pro

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

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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 dokončeného úkolu.

Parametry

tasks
Task<TResult>[]

Úkoly, které mají čekat na dokončení.

Návraty

Task<Task<TResult>>

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Výsledek vráceného úkolu je úkol, který byl dokončen.

Výjimky

Argument tasks měl hodnotu null.

Pole tasks obsahovalo úlohu null nebo byla prázdná.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho Result nastaveným na první úkol, který se má dokončit. To platí i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Platí pro

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

Zdroj:
Task.cs
Zdroj:
Task.cs
Zdroj:
Task.cs

Vytvoří úkol, který se dokončí po dokončení některého z zadaných úkolů.

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 výsledku vráceného úkolu.

Parametry

task1
Task<TResult>

První úkol, který má čekat na dokončení.

task2
Task<TResult>

Druhý úkol, který bude čekat na dokončení.

Návraty

Task<Task<TResult>>

Úkol, který představuje dokončení jednoho ze zadaných úkolů. Vrácený TResult úkolu je úkol, který byl dokončen jako první.

Výjimky

task1 nebo task2 byly null.

Poznámky

Vrácený úkol se dokončí po dokončení některého z zadaných úkolů. Vrácený úkol vždy skončí ve stavu RanToCompletion s jeho Result nastaveným na první úkol, který se má dokončit. Výsledná hodnota se true i v případě, že první úkol, který se má dokončit, skončil v Canceled nebo Faulted stavu.

Spropitné

V každé přetížené verzi Task.WhenAny() když tato metoda vrátí první dokončenou úlohu, ostatní úkoly budou pokračovat až do dokončení, a to i všechny z nich dokončeny v Canceled nebo Faulted stavu. Pokud tedy toto chování není žádoucí, můžete po dokončení prvního úkolu zrušit všechny zbývající úkoly.

Platí pro