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
- Наследование
- Атрибуты
Поля
| Имя | Значение | Описание |
|---|---|---|
| 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.IAsyncResultTaskCompletionSource<TResult> Конструкторы с параметром
creationOptions, чтобы указать параметры, используемые для настройки поведения базовой задачи.