Task.WhenAny Metoda

Definice

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

Přetížení

WhenAny(IEnumerable<Task>)

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

WhenAny(Task[])

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

WhenAny(Task, Task)

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

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

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

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

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

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

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

WhenAny(IEnumerable<Task>)

Vytvoří úlohu, která bude dokončena 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, na které se mají čekat na dokončení.

Návraty

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

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úkol s hodnotou null nebo bylo prázdné.

Poznámky

Vrácený úkol se dokončí po dokončení některého ze zadaných úkolů. Vrácený úkol vždy skončí ve RanToCompletion stavu 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, Canceled skončil ve stavu nebo Faulted .

Platí pro

WhenAny(Task[])

Vytvoří úlohu, která bude dokončena 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, na které se mají čekat na dokončení.

Návraty

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

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úkol s hodnotou null nebo bylo prázdné.

Poznámky

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

Platí pro

WhenAny(Task, Task)

Vytvoří úlohu, 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, na který se čeká na dokončení.

task2
Task

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

Návraty

Nový úkol, který představuje dokončení jednoho ze zadaných úkolů. Jedná Result se o úkol, který byl dokončen jako první.

Výjimky

task1 nebo task2 byla null.

Poznámky

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

Platí pro

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

Vytvoří úlohu, která bude dokončena 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, na které se mají čekat na dokončení.

Návraty

Task<Task<TResult>>

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

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úkol s hodnotou null nebo bylo prázdné.

Poznámky

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

Platí pro

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

Vytvoří úlohu, která bude dokončena 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, na které se mají čekat na dokončení.

Návraty

Task<Task<TResult>>

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

Výjimky

Argument tasks byl null.

Pole tasks obsahovalo úkol s hodnotou null nebo bylo prázdné.

Poznámky

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

Platí pro

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

Vytvoří úlohu, 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, na který se čeká na dokončení.

task2
Task<TResult>

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

Návraty

Task<Task<TResult>>

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

Výjimky

task1 nebo task2 byla null.

Poznámky

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

Tip

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 Canceled ve stavu nebo Faulted . 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