TaskFactory.ContinueWhenAll<TAntecedentResult, TResult> Method (array<Task<TAntecedentResult>[], Func<array<Task<TAntecedentResult>[], TResult>, TaskContinuationOptions)

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, TResult) ( _
    tasks As Task(Of TAntecedentResult)(), _
    continuationFunction As Func(Of Task(Of TAntecedentResult)(), TResult), _
    continuationOptions As TaskContinuationOptions _
) As Task(Of TResult)
public Task<TResult> ContinueWhenAll<TAntecedentResult, TResult>(
    Task<TAntecedentResult>[] tasks,
    Func<Task<TAntecedentResult>[], TResult> continuationFunction,
    TaskContinuationOptions continuationOptions
)

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

Parameters

  • continuationFunction
    Type: System.Func<array<Task<TAntecedentResult>[], TResult>
    The function delegate to execute asynchronously when all tasks in the tasks array have completed.

Return Value

Type: System.Threading.Tasks.Task<TResult>
The new continuation Task<TResult>.

Exceptions

Exception Condition
ObjectDisposedException

The exception that is thrown when one of the elements in the tasks array has been disposed.

ArgumentNullException

The exception that is thrown when the tasks array is null.

-or-

The exception that is thrown when the continuationFunction argument is null.

ArgumentOutOfRangeException

The exception that is thrown when the continuationOptions argument specifies an invalid TaskContinuationOptions value.

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.

Remarks

The NotOn* and OnlyOn* TaskContinuationOptions, which constrain for which TaskStatus states a continuation will be executed, are illegal with ContinueWhenAll.

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.

Change History

Date

History

Reason

Added text to clarify asynchronous execution of continuations.

Customer feedback.