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

 

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.

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

Universal Windows Platform
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
Return to top
Show: