Task.WhenAny メソッド

定義

指定されたタスクのいずれかが完了してから完了するタスクを作成します。

オーバーロード

WhenAny(IEnumerable<Task>)

指定されたタスクのいずれかが完了してから完了するタスクを作成します。

WhenAny(Task[])

指定されたタスクのいずれかが完了してから完了するタスクを作成します。

WhenAny(Task, Task)

指定されたいずれかのタスクが完了してから完了するタスクを作成します。

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

指定されたタスクのいずれかが完了してから完了するタスクを作成します。

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

指定されたタスクのいずれかが完了してから完了するタスクを作成します。

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

指定されたいずれかのタスクが完了してから完了するタスクを作成します。

WhenAny(IEnumerable<Task>)

Source:
Task.cs
Source:
Task.cs
Source:
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 終了し、結果は完了する最初のタスクに設定されます。 これは、完了する最初のタスクが または Faulted 状態でCanceled終了した場合でも当てはまります。

適用対象

WhenAny(Task[])

Source:
Task.cs
Source:
Task.cs
Source:
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 で常に終了します。 これは、完了する最初のタスクが または Faulted 状態でCanceled終了した場合でも当てはまります。

適用対象

WhenAny(Task, Task)

Source:
Task.cs
Source:
Task.cs
Source:
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

完了を待機する 1 番目のタスク。

task2
Task

完了を待機する 2 番目のタスク。

戻り値

指定されたタスクの 1 つの完了を表す新しいタスク。 その Result は最初に完了したタスクです。

例外

task1 または task2null でした。

注釈

返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion タスクに設定された状態 Result で常に終了します。 結果の値は、true完了する最初のタスクが または Faulted 状態で終了したCanceled場合でもです。

適用対象

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

Source:
Task.cs
Source:
Task.cs
Source:
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 で常に終了します。 これは、完了する最初のタスクが または Faulted 状態でCanceled終了した場合でも当てはまります。

適用対象

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

Source:
Task.cs
Source:
Task.cs
Source:
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 で常に終了します。 これは、完了する最初のタスクが または Faulted 状態でCanceled終了した場合でも当てはまります。

適用対象

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

Source:
Task.cs
Source:
Task.cs
Source:
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>

完了を待機する 1 番目のタスク。

task2
Task<TResult>

完了を待機する 2 番目のタスク。

戻り値

Task<Task<TResult>>

指定されたいずれかのタスクの完了を表すタスク。 返されたタスクは TResult 、最初に完了したタスクです。

例外

task1 または task2null でした。

注釈

返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion タスクに設定された状態 Result で常に終了します。 結果の値は、true完了する最初のタスクが または Faulted 状態で終了したCanceled場合でもです。

ヒント

このメソッドが最初に完了したタスクを返すときに、Task.WhenAny() のすべてのオーバーロードされたバージョンでは、他のタスクは完了するまで実行され続けます。それらのタスクは、 または Faulted 状態で完了した場合でも実行されますCanceled。 そのため、その動作が望ましくない場合は、最初のタスクが完了したら、残りのタスクをすべて取り消すことができます。

適用対象