TaskCreationOptions 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定控制创建和执行任务的可选行为的标志。
此枚举支持其成员值的按位组合。
public enum class TaskCreationOptions
[System.Flags]
public enum TaskCreationOptions
[System.Flags]
[System.Serializable]
public enum TaskCreationOptions
[<System.Flags>]
type TaskCreationOptions =
[<System.Flags>]
[<System.Serializable>]
type TaskCreationOptions =
Public Enum TaskCreationOptions
- 继承
- 属性
字段
| 名称 | 值 | 说明 |
|---|---|---|
| None | 0 | 指定应使用默认行为。 |
| PreferFairness | 1 | 尽可能公平地计划任务的提示 TaskScheduler ,这意味着提前安排的任务将更有可能更快地运行,稍后计划的任务更有可能在以后运行。 |
| LongRunning | 2 | 指定任务将是长时间运行的粗粒度操作,涉及的组件比细粒度系统少得多。 它提供一个提示 TaskScheduler ,提示可能保证过度订阅。 使用 Oversubscription 可以创建比可用数量的硬件线程更多的线程。 它还向任务计划程序提供提示,提示任务可能需要额外的线程,以便它不会阻止本地线程池队列上其他线程或工作项的向前进度。 |
| AttachedToParent | 4 | 指定任务附加到任务层次结构中的父级。 默认情况下,子任务(即外部任务创建的内部任务)独立于其父任务执行。 可以使用此选项 AttachedToParent ,以便同步父任务和子任务。 请注意,如果使用该选项配置 DenyChildAttach 了父任务, AttachedToParent 则子任务中的选项不起作用,子任务将作为分离的子任务执行。 有关详细信息,请参阅附加和分离的子任务。 |
| DenyChildAttach | 8 | 指定尝试作为附加子任务执行的任何子任务(即使用选项创建 AttachedToParent )将无法附加到父任务,而是作为分离子任务执行。 有关详细信息,请参阅附加和分离的子任务。 |
| HideScheduler | 16 | 防止环境计划程序被视为已创建任务中的当前计划程序。 这意味着在创建的任务中执行的 StartNew 或 ContinueWith 等操作将被视为 Default 当前计划程序。 |
| RunContinuationsAsynchronously | 64 | 强制将延续添加到当前任务以异步方式执行。 请注意,RunContinuationsAsynchronously 成员在从 .NET Framework 4.6 开始的 TaskCreationOptions 枚举中可用。 |
注解
枚举 TaskCreationOptions 与以下方法一起使用:
TaskFactory具有
creationOptions参数的构造TaskFactory<TResult>函数,用于为任务工厂创建的任务指定默认选项。Task具有
creationOptions参数的构造Task<TResult>函数,用于指定用于自定义任务行为的选项。FromAsync具有
creationOptions参数的和FromAsync方法,用于指定用于自定义在指定IAsyncResult完成时执行结束方法的任务的行为的选项。具有TaskCompletionSource<TResult>
creationOptions参数的构造函数,用于指定用于自定义基础任务行为的选项。