This documentation is archived and is not being maintained.

Task.WaitAll Method (Task[], CancellationToken)

Waits for all of the provided Task objects to complete execution.

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

public static void WaitAll(
	Task[] tasks,
	CancellationToken cancellationToken


Type: System.Threading.Tasks.Task[]
An array of Task instances on which to wait.
Type: System.Threading.CancellationToken
A CancellationToken() to observe while waiting for the tasks to complete.


The cancellationToken was canceled.


The tasks argument is null.


At least one of the Task instances was canceled -or- an exception was thrown during the execution of at least one of the Task instances. If a task was canceled, the AggregateException contains an OperationCanceledException in its InnerExceptions collection.


The tasks argument contains a null element.


One or more of the Task objects in tasks has been disposed.

The cancellationToken argument is used to cancel the wait operation. If it is canceled, the Wait returns false (False in Visual Basic). Cancellation of the tasks is a distinct operation, and is signaled by the AggregateException as noted above.

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.