ContinueWhenAny Method (Task[], Func(Task, TResult), TaskContinuationOptions)

TaskFactory<TResult>.ContinueWhenAny Method (Task[], Func<Task, TResult>, TaskContinuationOptions)

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Creates a continuation task that will be started upon the completion of any task in the provided set.

Namespace:  System.Threading.Tasks
Assembly:  mscorlib (in mscorlib.dll)

public Task<TResult> ContinueWhenAny(
	Task[] tasks,
	Func<Task, TResult> continuationFunction,
	TaskContinuationOptions continuationOptions
)

Parameters

tasks
Type: System.Threading.Tasks.Task []
The array of tasks from which to continue when one task completes.
continuationFunction
Type: System.Func<Task, TResult>
The function delegate to execute asynchronously when one task in the tasks array completes.
continuationOptions
Type: System.Threading.Tasks.TaskContinuationOptions
One of the enumeration values that controls the behavior of the created continuation task. The NotOn* or OnlyOn* values are not valid.

Return Value

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

ExceptionCondition
ObjectDisposedException

One of the elements in the tasks array has been disposed.

ArgumentNullException

The tasks array is null.

-or-

The continuationFunction argument is null.

ArgumentOutOfRangeException

The continuationOptions argument specifies an invalid enumeration value.

ArgumentException

The tasks array contains a null value.

-or-

The tasks array is empty.

After completion, a task is in one of these states: RanToCompletion, Faulted, or Canceled states.

Windows Phone OS

Supported in: 8.1, 8.0

Show:
© 2017 Microsoft