TaskFactory::ContinueWhenAny<TAntecedentResult, TResult> Method (array<Task<TAntecedentResult>^>^, Func<Task<TAntecedentResult>^, TResult>^, CancellationToken, TaskContinuationOptions, TaskScheduler^)
Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.
Assembly: mscorlib (in mscorlib.dll)
public: generic<typename TAntecedentResult, typename TResult> Task<TResult>^ ContinueWhenAny( array<Task<TAntecedentResult>^>^ tasks, Func<Task<TAntecedentResult>^, TResult>^ continuationFunction, CancellationToken cancellationToken, TaskContinuationOptions continuationOptions, TaskScheduler^ scheduler )
Parameters
- tasks
-
Type:
array<System.Threading.Tasks::Task<TAntecedentResult>^>^
The array of tasks from which to continue when one task completes.
- continuationFunction
-
Type:
System::Func<Task<TAntecedentResult>^, TResult>^
The function delegate to execute asynchronously when one task in the tasks array completes.
- cancellationToken
-
Type:
System.Threading::CancellationToken
The CancellationToken that will be assigned to the new continuation task.
- continuationOptions
-
Type:
System.Threading.Tasks::TaskContinuationOptions
The TaskContinuationOptions value that controls the behavior of the created continuation Task<TResult>.
- scheduler
-
Type:
System.Threading.Tasks::TaskScheduler^
The TaskScheduler that is used to schedule the created continuation Task<TResult>.
Type Parameters
- TAntecedentResult
The type of the result of the antecedent tasks.
- TResult
The type of the result that is returned by the continuationFunction delegate and associated with the created Task<TResult>.
| Exception | Condition |
|---|---|
| ArgumentNullException | The exception that is thrown when the tasks array is null. -or- The exception that is thrown when the continuationFunction argument is null. -or- The exception that is thrown when the scheduler argument is null. |
| ArgumentException | The exception that is thrown when the tasks array contains a null value. -or- The exception that is thrown when the tasks array is empty. |
The NotOn* and OnlyOn* TaskContinuationOptions, which constrain for which TaskStatus states a continuation will be executed, are illegal with ContinueWhenAny.
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 5.0
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1