Task.WhenAny メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定されたタスクのいずれかが完了してから完了するタスクを作成します。
オーバーロード
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
指定されたいずれかのタスクが完了してから完了するタスクを作成します。
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
または task2
が null
でした。
注釈
返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion
タスクに設定された状態 Result
で常に終了します。 結果の値は、true
完了する最初のタスクが または Faulted
状態で終了したCanceled
場合でもです。
適用対象
WhenAny(Task[])
- ソース:
- 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
で常に終了します。 これは、完了する最初のタスクが または Faulted
状態でCanceled
終了した場合でも当てはまります。
適用対象
WhenAny(ReadOnlySpan<Task>)
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 (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>
戻り値
適用対象
WhenAny(IEnumerable<Task>)
- ソース:
- 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
終了し、結果は完了する最初のタスクに設定されます。 これは、完了する最初のタスクが または Faulted
状態でCanceled
終了した場合でも当てはまります。
適用対象
WhenAny<TResult>(IEnumerable<Task<TResult>>)
- ソース:
- 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>>
完了を待機するタスク。
戻り値
指定されたいずれかのタスクの完了を表すタスク。 返されるタスクの結果は完了したタスクです。
例外
tasks
引数が null
でした。
tasks
配列に null タスクが含まれていたか、空でした。
注釈
返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion
タスクに設定された状態 Result
で常に終了します。 これは、完了する最初のタスクが または Faulted
状態でCanceled
終了した場合でも当てはまります。
適用対象
WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)
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> (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>>
戻り値
適用対象
WhenAny<TResult>(Task<TResult>[])
- ソース:
- 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>[]
完了を待機するタスク。
戻り値
指定されたいずれかのタスクの完了を表すタスク。 返されるタスクの結果は完了したタスクです。
例外
tasks
引数が null でした。
tasks
配列に null タスクが含まれていたか、空でした。
注釈
返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion
タスクに設定された状態 Result
で常に終了します。 これは、完了する最初のタスクが または Faulted
状態でCanceled
終了した場合でも当てはまります。
適用対象
WhenAny<TResult>(Task<TResult>, Task<TResult>)
- ソース:
- 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>
完了を待機する 1 番目のタスク。
- task2
- Task<TResult>
完了を待機する 2 番目のタスク。
戻り値
指定されたいずれかのタスクの完了を表すタスク。 返されたタスクは TResult
、最初に完了したタスクです。
例外
task1
または task2
が null
でした。
注釈
返されたタスクは、指定されたタスクのいずれかが完了すると完了します。 返されたタスクは、完了する最初の RanToCompletion
タスクに設定された状態 Result
で常に終了します。 結果の値は、true
完了する最初のタスクが または Faulted
状態で終了したCanceled
場合でもです。
ヒント
このメソッドが最初に完了したタスクを返すときに、Task.WhenAny() のすべてのオーバーロードされたバージョンでは、他のタスクは完了するまで実行され続けます。それらのタスクは、 または Faulted
状態で完了した場合でも実行されますCanceled
。 そのため、その動作が望ましくない場合は、最初のタスクが完了したら、残りのタスクをすべて取り消すことができます。
適用対象
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示