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
屬性

欄位

AttachedToParent 4

指定將工作附加至工作階層中的父代。 根據預設,子工作 (即外部工作所建立的內部工作) 會在其父代之外單獨執行。 您可以使用 AttachedToParent 選項,使父工作與子工作同步化。

請注意,若父工作是以 DenyChildAttach 選項進行設定,則子工作中的 AttachedToParent 選項無效,且會以中斷連結的子工作方式執行子工作。

如需詳細資訊,請參閱附加與中斷連結的子工作

DenyChildAttach 8

指定嘗試以連結的子工作方式執行的任何子工作 (亦即以 AttachedToParent 選項所建立),都將無法連結至父工作,且會改為以中斷連結的子工作方式執行。 如需詳細資訊,請參閱附加與中斷連結的子工作

HideScheduler 16

防止環境排程器被視為所建立工作中的目前排程器。 表示如 StartNew 或 ContinueWith 這樣在已建立工作中執行的作業會將 Default 視為目前排程器。

LongRunning 2

指定工作將會是長時間執行的廣泛作業,涉及比細部系統更少、更大的元件。 這會提示 TaskScheduler 可能會發生過度訂閱的狀況。 過度訂閱可讓您建立比可用硬體執行緒數目更多的執行緒。 它也提供工作排程器的提示,指出工作可能需要額外的執行緒,使其不會封鎖本機執行緒集區佇列上其他執行緒或工作專案的向前進度。

None 0

指定應該使用預設行為。

PreferFairness 1

提示 TaskScheduler 盡量依公平法則排定工作,即盡量讓較早排定的工作較早執行,並讓較晚排定的工作較晚執行。

RunContinuationsAsynchronously 64

強制以非同步方式執行加入目前工作的接續。

請注意, RunContinuationsAsynchronously 從 .NET Framework 4.6 開始, TaskCreationOptions 列舉中可以使用成員。

備註

列舉 TaskCreationOptions 會搭配下列方法使用:

  • TaskFactoryTaskFactory<TResult> 建構函式具有 creationOptions 參數,以指定工作處理站所建立之工作的預設選項。

  • TaskTask<TResult> 建構函式具有 creationOptions 參數,以指定用來自訂工作行為的選項。

  • StartNew使用 參數的 和 StartNew 方法 creationOptions ,以指定用來自訂工作行為的選項。

  • FromAsync使用 參數的 creationOptionsFromAsync 方法,指定用來自訂指定完成時 IAsyncResult 執行結束方法之工作行為的選項。

  • TaskCompletionSource<TResult>具有 參數的 creationOptions 建構函式,指定用來自訂基礎工作行為的選項。

適用於

另請參閱