The System.Threading.Tasks namespace provides types that simplify the work of writing concurrent and asynchronous code. The main types are System.Threading.Tasks.Task which represents an asynchronous operation that can be waited on and cancelled, and System.Threading.Tasks.Task`1, which is a task that can return a value. The System.Threading.Tasks.TaskFactory class provides static methods for creating and starting tasks, and the System.Threading.Tasks.TaskScheduler class provides the default thread scheduling infrastructure.
Type | Reason |
---|---|
ConcurrentExclusiveSchedulerPair |
Provides task schedulers that coordinate to execute tasks while ensuring that concurrent tasks may run concurrently and exclusive tasks never do. |
Parallel |
Provides support for parallel loops and regions. |
ParallelLoopResult |
Provides completion status on the execution of a System.Threading.Tasks.Parallel loop. |
ParallelLoopState |
Enables iterations of System.Threading.Tasks.Parallel loops to interact with other iterations. An instance of this class is provided by the Parallel class to each loop; you can not create instances in your user code. |
ParallelOptions |
Stores options that configure the operation of methods on the System.Threading.Tasks.Parallel class. |
Task |
Represents an asynchronous operation. |
Task<TResult> |
Represents an asynchronous operation that can return a value. |
TaskCanceledException |
Represents an exception used to communicate task cancellation. |
TaskCompletionSource<TResult> |
Represents the producer side of a System.Threading.Tasks.Task`1 unbound to a delegate, providing access to the consumer side through the System.Threading.Tasks.TaskCompletionSource`1.Task property. |
TaskContinuationOptions |
Specifies the behavior for a task that is created by using the System.Threading.Tasks.Task.ContinueWith(Action<System.Threading.Tasks.Task>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler) or System.Threading.Tasks.Task`1.ContinueWith(Action<System.Threading.Tasks.Task<`0>>,System.Threading.Tasks.TaskContinuationOptions) method. |
TaskCreationOptions |
Specifies flags that control optional behavior for the creation and execution of tasks. |
TaskExtensions |
Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of System.Threading.Tasks.Task instances. |
TaskFactory |
Provides support for creating and scheduling System.Threading.Tasks.Task objects. |
TaskFactory<TResult> |
Provides support for creating and scheduling System.Threading.Tasks.Task`1 objects. |
TaskScheduler |
Represents an object that handles the low-level work of queuing tasks onto threads. |
TaskSchedulerException |
Represents an exception used to communicate an invalid operation by a System.Threading.Tasks.TaskScheduler. |
TaskStatus |
Represents the current stage in the lifecycle of a System.Threading.Tasks.Task. |
UnobservedTaskExceptionEventArgs |
Provides data for the event that is raised when a faulted System.Threading.Tasks.Task's exception goes unobserved. |