Task.WhenAny 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
创建一个任务,该任务将在任何提供的任务完成时完成。
重载
| 名称 | 说明 |
|---|---|
| WhenAny(IEnumerable<Task>) |
创建一个任务,该任务将在任何提供的任务完成时完成。 |
| WhenAny(Task[]) |
创建一个任务,该任务将在任何提供的任务完成时完成。 |
| WhenAny<TResult>(Task<TResult>[]) |
创建一个任务,该任务将在任何提供的任务完成时完成。 |
| WhenAny<TResult>(IEnumerable<Task<TResult>>) |
创建一个任务,该任务将在任何提供的任务完成时完成。 |
WhenAny(IEnumerable<Task>)
创建一个任务,该任务将在任何提供的任务完成时完成。
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(Task[])
创建一个任务,该任务将在任何提供的任务完成时完成。
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<TResult>(Task<TResult>[])
创建一个任务,该任务将在任何提供的任务完成时完成。
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>[]
要等待完成的任务。
返回
表示所提供任务之一的完成的任务。 返回任务的结果是已完成的任务。
例外
参数 tasks 为 null。
数组 tasks 包含 null 任务或为空。
注解
返回的任务将在提供的任何任务完成时完成。 返回的任务将始终以 RanToCompletion 状态结束,其 Result 设置为要完成的第一个任务。 即使要完成的第一个任务以 Canceled 或 Faulted 状态结束,也是如此。
适用于
WhenAny<TResult>(IEnumerable<Task<TResult>>)
创建一个任务,该任务将在任何提供的任务完成时完成。
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>>
要等待完成的任务。
返回
表示所提供任务之一的完成的任务。 返回任务的结果是已完成的任务。
例外
参数 tasks 是 null。
数组 tasks 包含 null 任务或为空。
注解
返回的任务将在提供的任何任务完成时完成。 返回的任务将始终以 RanToCompletion 状态结束,其 Result 设置为要完成的第一个任务。 即使要完成的第一个任务以 Canceled 或 Faulted 状态结束,也是如此。