This topic has not yet been rated - Rate this topic

TaskContinuationOptions Enumeration

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Specifies the behavior for a task that is created by using the System.Threading.Tasks.Task.ContinueWith or System.Threading.Tasks.Task`1.ContinueWith method.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

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

[SerializableAttribute]
[FlagsAttribute]
public enum TaskContinuationOptions
Member name Description
Supported by Portable Class Library None Default = "Continue on any, no task options, run asynchronously" Specifies that the default behavior should be used. Continuations, by default, will be scheduled when the antecedent task completes, regardless of the task's final TaskStatus.
Supported by Portable Class Library PreferFairness A hint to a TaskScheduler to schedule a task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to be run sooner, and tasks scheduled later will be more likely to be run later.
Supported by Portable Class Library LongRunning Specifies that a task will be a long-running, course-grained operation. It provides a hint to the TaskScheduler that oversubscription may be warranted.
Supported by Portable Class Library AttachedToParent Specifies that a task is attached to a parent in the task hierarchy.
DenyChildAttach Specifies that an InvalidOperationException will be thrown if an attempt is made to attach a child task to the created task.
HideScheduler Prevents the ambient scheduler from being seen as the current scheduler in the created task. This means that operations like StartNew or ContinueWith that are performed in the created task will see Default as the current scheduler.
LazyCancellation In the case of continuation cancellation, prevents completion of the continuation until the antecedent has completed.
Supported by Portable Class Library NotOnRanToCompletion Specifies that the continuation task should not be scheduled if its antecedent ran to completion. This option is not valid for multi-task continuations.
Supported by Portable Class Library NotOnFaulted Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled exception. This option is not valid for multi-task continuations.
Supported by Portable Class Library NotOnCanceled Specifies that the continuation task should not be scheduled if its antecedent was canceled. This option is not valid for multi-task continuations.
Supported by Portable Class Library OnlyOnRanToCompletion Specifies that the continuation task should be scheduled only if its antecedent ran to completion. This option is not valid for multi-task continuations.
Supported by Portable Class Library OnlyOnFaulted Specifies that the continuation task should be scheduled only if its antecedent threw an unhandled exception. This option is not valid for multi-task continuations.
Supported by Portable Class Library OnlyOnCanceled Specifies that the continuation task should be scheduled only if its antecedent was canceled. This option is not valid for multi-task continuations.
Supported by Portable Class Library ExecuteSynchronously Specifies that the continuation task should be executed synchronously. With this option specified, the continuation will be run on the same thread that causes the antecedent task to transition into its final state. If the antecedent is already complete when the continuation is created, the continuation will run on the thread creating the continuation. Only very short-running continuations should be executed synchronously.

.NET Framework

Supported in: 4.5, 4

.NET Framework Client Profile

Supported in: 4

Portable Class Library

Supported in: Portable Class Library

Windows 8 Release Preview, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Did you find this helpful?
(1500 characters remaining)