Task.WhenAny Метод

Определение

Создает задачу, которая завершится после завершения любой из предоставленных задач.

Перегрузки

Имя Описание
WhenAny(Task, Task)

Создает задачу, которая завершится после завершения любой из предоставленных задач.

WhenAny(Task[])

Создает задачу, которая завершится после завершения любой из предоставленных задач.

WhenAny(ReadOnlySpan<Task>)

Создает задачу, которая завершится после завершения любой из предоставленных задач.

WhenAny(IEnumerable<Task>)

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Создает задачу, которая завершится после завершения любой из предоставленных задач.

WhenAny(Task, Task)

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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)

Параметры

task1
Task

Первая задача, подождать завершения.

task2
Task

Вторая задача, подождать завершения.

Возвращаемое значение

Новая задача, представляющая завершение одной из предоставленных задач. Это Result задача, которая была завершена первым.

Исключения

task1 или task2 был null.

Комментарии

Возвращаемая задача завершается после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с заданным Result для выполнения первой задачей. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Применяется к

WhenAny(Task[])

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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)

Параметры

tasks
Task[]

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Задача, представляющая завершение одной из предоставленных задач. Результат задачи возврата — это задача, которая завершена.

Исключения

Аргумент tasks был null.

Массив tasks содержал задачу NULL или был пустым.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с заданным для выполнения Result первой задачей. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Применяется к

WhenAny(ReadOnlySpan<Task>)

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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)

Параметры

tasks
ReadOnlySpan<Task>

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Задача, представляющая завершение одной из предоставленных задач. Результат возвращаемой задачи — это задача, которая завершена.

Исключения

Массив tasks содержит null задачу или пуст.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в состоянии RanToCompletion с его результирующий набор для выполнения первой задачи. true Это даже если первая задача завершена в состоянии отмены или сбоя.

Применяется к

WhenAny(IEnumerable<Task>)

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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)

Параметры

tasks
IEnumerable<Task>

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Задача, представляющая завершение одной из предоставленных задач. Результат задачи возврата — это задача, которая завершена.

Исключения

Аргумент tasks был null.

Массив tasks содержал задачу NULL или был пустым.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с его результирующий набор для первой задачи, чтобы завершить. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Применяется к

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

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Параметры типа

TResult

Тип завершенной задачи.

Параметры

tasks
IEnumerable<Task<TResult>>

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Task<Task<TResult>>

Задача, представляющая завершение одной из предоставленных задач. Результат задачи возврата — это задача, которая завершена.

Исключения

Аргумент tasks был null.

Массив tasks содержал задачу NULL или был пустым.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с заданным для выполнения Result первой задачей. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Применяется к

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

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Параметры типа

TResult

Тип результата, возвращаемого задачами.

Параметры

tasks
ReadOnlySpan<Task<TResult>>

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Task<Task<TResult>>

Задача, представляющая завершение одной из предоставленных задач. Результат возвращаемой задачи — это задача, которая завершена.

Исключения

Массив tasks содержит null задачу или пуст.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в состоянии RanToCompletion с его результирующий набор для выполнения первой задачи. true Это даже если первая задача завершена в состоянии отмены или сбоя.

Применяется к

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

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Параметры типа

TResult

Тип завершенной задачи.

Параметры

tasks
Task<TResult>[]

Задачи, которые нужно ждать завершения.

Возвращаемое значение

Task<Task<TResult>>

Задача, представляющая завершение одной из предоставленных задач. Результат задачи возврата — это задача, которая завершена.

Исключения

Аргумент tasks был null.

Массив tasks содержал задачу NULL или был пустым.

Комментарии

Возвращаемая задача завершится после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с заданным для выполнения Result первой задачей. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Применяется к

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

Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs
Исходный код:
Task.cs

Создает задачу, которая завершится после завершения любой из предоставленных задач.

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

Параметры типа

TResult

Тип результата возвращаемой задачи.

Параметры

task1
Task<TResult>

Первая задача, подождать завершения.

task2
Task<TResult>

Вторая задача, подождать завершения.

Возвращаемое значение

Task<Task<TResult>>

Задача, представляющая завершение одной из предоставленных задач. Возвращаемая задача — это задача TResult , которая была завершена первым.

Исключения

task1 или task2 был null.

Комментарии

Возвращаемая задача завершается после завершения любой из предоставленных задач. Возвращаемая задача всегда заканчивается в RanToCompletion состоянии с заданным Result для выполнения первой задачей. Это верно, даже если первая задача завершена в Canceled состоянии или Faulted состоянии.

Tip

При каждой перегрузке Task.WhenAny(), когда метод возвращает первую завершенную задачу, другие задачи будут продолжать выполняться до завершения, даже если любой из них завершен в Canceled состоянии или Faulted состоянии. Если это поведение нежелательно, можно отменить все оставшиеся задачи после завершения первой задачи.

Применяется к