DelayedTaskWhenAllTResult Method (TaskTResult) |
Creates a task that will complete when all of the supplied tasks have completed.
Namespace: Rackspace.ThreadingAssembly: Rackspace.Threading (in Rackspace.Threading.dll) Version: 1.1.0.0
Syntax
public static Task<TResult[]> WhenAll<TResult>(
params Task<TResult>[] tasks
)
Public Shared Function WhenAll(Of TResult) (
ParamArray tasks As Task(Of TResult)()
) As Task(Of TResult())
public:
generic<typename TResult>
static Task<array<TResult>^>^ WhenAll(
... array<Task<TResult>^>^ tasks
)
static member WhenAll :
tasks : Task<'TResult>[] -> Task<'TResult[]>
Parameters
- tasks
- Type: System.Threading.TasksTaskTResult
The tasks to wait on for completion.
Type Parameters
- TResult
- The type of the completed task.
Return Value
Type:
TaskTResultA task that represents the completion of all of the supplied tasks.
Exceptions
Remarks
If any of the supplied tasks completes in a faulted state, the returned task will also
complete in a
Faulted state, where its exceptions will contain
the aggregation of the set of unwrapped exceptions from each of the supplied tasks.
If none of the supplied tasks faulted but at least one of them was canceled, the
returned task will end in the Canceled state.
If none of the tasks faulted and none of the tasks were canceled, the resulting
task will end in the RanToCompletion state. The
Result of the returned task will be set to an array
containing all of the results of the supplied tasks in the same order as they were
provided (e.g. if the input tasks array contained t1, t2, t3, the output task's
Result will return an TResult[]
where arr[0] == t1.Result, arr[1] == t2.Result, and arr[2] == t3.Result).
If the supplied array/enumerable contains no tasks, the returned task will
immediately transition to a RanToCompletion state before it's
returned to the caller. The returned TResult[] will be an array
of 0 elements.
Version Information
.NET for Windows Store apps
Supported in: Windows 8
.NET Framework
Supported in: 4.5, 4.0, 3.5
Portable Class Library
Supported in: Portable Class Library (Legacy), Portable Class Library
Rackspace Threading Library
Supported in: 1.1
See Also