Task.WhenAny 方法

定義

建立一個任務,當任一提供的任務完成時,該任務就會完成。

多載

名稱 Description
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 列包含空任務或為空。

備註

回傳的任務會在所提供任務完成時完成。 回傳的任務總是以 RanToCompletion 該狀態結束,結果設為第一個完成的任務。 即使第一個完成的任務在 或 CanceledFaulted 狀態結束,這點也成立。

適用於

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 論點是無效的。

tasks 列包含空任務或為空。

備註

回傳的任務會在所提供任務完成時完成。 回傳任務總是以設定為第一個完成任務的狀態Result結束RanToCompletion。 即使第一個完成的任務在 或 CanceledFaulted 狀態結束,這點也成立。

適用於

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

要等候完成的工作。

傳回

Task<Task<TResult>>

代表完成所提供任務之一的任務。 返回任務的結果是完成的任務。

例外狀況

這個 tasks 論點是無效的。

tasks 列包含空任務或為空。

備註

回傳的任務會在所提供任務完成時完成。 回傳任務總是以設定為第一個完成任務的狀態Result結束RanToCompletion。 即使第一個完成的任務在 或 CanceledFaulted 狀態結束,這點也成立。

適用於

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

要等候完成的工作。

傳回

Task<Task<TResult>>

代表完成所提供任務之一的任務。 返回任務的結果是完成的任務。

例外狀況

tasks 點是 null

tasks 列包含空任務或為空。

備註

回傳的任務會在所提供任務完成時完成。 回傳任務總是以設定為第一個完成任務的狀態Result結束RanToCompletion。 即使第一個完成的任務在 或 CanceledFaulted 狀態結束,這點也成立。

適用於