TaskFactory<TResult>.ContinueWhenAll<TAntecedentResult> Method (array<Task<TAntecedentResult>[], Func<array<Task<TAntecedentResult>[], TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Creates a continuation Task<TResult> that will be started upon the completion of a set of provided Tasks.
Namespace: System.Threading.Tasks
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function ContinueWhenAll(Of TAntecedentResult) ( _
tasks As Task(Of TAntecedentResult)(), _
continuationFunction As Func(Of Task(Of TAntecedentResult)(), TResult), _
cancellationToken As CancellationToken, _
continuationOptions As TaskContinuationOptions, _
scheduler As TaskScheduler _
) As Task(Of TResult)
public Task<TResult> ContinueWhenAll<TAntecedentResult>(
Task<TAntecedentResult>[] tasks,
Func<Task<TAntecedentResult>[], TResult> continuationFunction,
CancellationToken cancellationToken,
TaskContinuationOptions continuationOptions,
TaskScheduler scheduler
)
Type Parameters
- TAntecedentResult
The type of the result of the antecedent tasks.
Parameters
- tasks
Type: array<System.Threading.Tasks.Task<TAntecedentResult>[]
The array of tasks from which to continue.
- continuationFunction
Type: System.Func<array<Task<TAntecedentResult>[], TResult>
The function delegate to execute asynchronously when all tasks in the tasks array have completed.
- 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>.
Return Value
Type: System.Threading.Tasks.Task<TResult>
The new continuation Task<TResult>.
Exceptions
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. |
ArgumentOutOfRangeException | The exception that is thrown when the continuationOptions argument specifies an invalid TaskContinuationOptions value. |
ObjectDisposedException | The exception that is thrown when one of the elements in the tasks array has been disposed. -or- The CancellationTokenSource that created cancellationToken has already been disposed. |
Remarks
The NotOn* and OnlyOn* TaskContinuationOptions, which constrain for which TaskStatus states a continuation will be executed, are illegal with ContinueWhenAll.
After completion, a task is in one of these states: RanToCompletion, Faulted, or Canceled states.
Version Information
Silverlight
Supported in: 5
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also
Reference
Other Resources
Change History
Date |
History |
Reason |
---|---|---|
Added text to clarify asynchronous execution of continuations. |
Customer feedback. |