TaskCreationOptions Перечисление

Определение

Задает флаги, которые управляют необязательным поведением для создания и выполнения задач.

Это перечисление поддерживает побитовую комбинацию значений его членов.

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
Наследование
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 доступен в перечислении TaskCreationOptions начиная с .NET Framework 4.6.

Комментарии

Перечисление TaskCreationOptions используется со следующими методами:

  • TaskFactory Конструкторы TaskFactory<TResult> с параметромcreationOptions, чтобы указать параметры по умолчанию для задач, созданных фабрикой задач.

  • Task Конструкторы Task<TResult> с параметромcreationOptions, чтобы указать параметры, используемые для настройки поведения задачи.

  • Методы StartNew с StartNew параметром creationOptions , чтобы указать параметры, используемые для настройки поведения задачи.

  • Методы FromAsync с параметромFromAsync, чтобы указать параметры, используемые для настройки поведения задачи, которая выполняет метод конца при выполнении указанного значенияcreationOptions.IAsyncResult

  • TaskCompletionSource<TResult> Конструкторы с параметромcreationOptions, чтобы указать параметры, используемые для настройки поведения базовой задачи.

Применяется к

См. также раздел