PolicyElementKey 列挙型
ポリシー キーは、スケジューラの動作をさまざまな側面から表します。 各ポリシー要素は、キーと値の組み合わせで表現されます。 スケジューラ ポリシーと、スケジューラに対するその影響の詳細については、「タスク スケジューラ (同時実行ランタイム)」を参照してください。
enum PolicyElementKey;
メンバー
値
名前 |
説明 |
---|---|
ContextPriority |
スケジューラの各コンテキストに対するオペレーティング システム スレッドの優先度。 このキーの値を INHERIT_THREAD_PRIORITY に設定した場合、スケジューラ内のコンテキストは、そのスケジューラを作成したスレッドの優先度を継承します。 有効な値: Windows の SetThreadPriority 関数で有効なすべての値、および特殊な値 INHERIT_THREAD_PRIORITY 既定値: THREAD_PRIORITY_NORMAL |
ContextStackSize |
スケジューラ内の各コンテキストの予約済みのスタック サイズ (キロバイト単位)。 有効な値: 正の整数 既定値: 0 (スタック サイズに対するプロセスの既定値が使用される) |
DynamicProgressFeedback |
スケジューラのリソースのバランスを再調整する際の判断基準として、スケジューラから収集された統計情報に従うか、基になるハードウェア スレッドのサブスクリプション レベルのみに基づくかを決定します。 詳細については、「DynamicProgressFeedbackType 列挙型」を参照してください。 有効な値: DynamicProgressFeedbackType 列挙型のメンバー (ProgressFeedbackEnabled または ProgressFeedbackDisabled) 既定値: ProgressFeedbackEnabled |
LocalContextCacheSize |
SchedulingProtocol ポリシー キーの値が EnhanceScheduleGroupLocality に設定されている場合、仮想プロセッサごとのローカル キューにキャッシュできる実行可能コンテキストの最大数を指定します。 このようなコンテキストは通常、それを実行可能にした仮想プロセッサで、後入れ先出し (LIFO) 方式で実行されます。 SchedulingProtocol キーの値が EnhanceForwardProgress に設定されている場合、このポリシー キーに意味はありません。 有効な値: 負でない整数 既定値: 8 |
MaxConcurrency |
スケジューラによって要求される最大同時実行レベル。 リソース マネージャーは、この数に相当する仮想プロセッサを最初に割り当てようと試みます。 特殊な値である MaxExecutionResources は、要求される同時実行レベルが、コンピューター上のハードウェア スレッド数と同じであることを示します。 MinConcurrency に指定された値が、コンピューター上のハードウェア スレッド数を超えており、なおかつ、MaxConcurrency が MaxExecutionResources として指定された場合、MaxConcurrency の値が MinConcurrency の設定と一致するように増やされます。 有効な値: 正の整数および特殊な値 MaxExecutionResources 既定値: MaxExecutionResources |
MaxPolicyElementKey |
最大ポリシー要素キー。 有効な要素キーではありません。 |
MinConcurrency |
リソース マネージャーからスケジューラに割り当てる必要のある最小同時実行レベル。 スケジューラに割り当てられる仮想プロセッサの数が、最小値を下回ることは決してありません。 特殊な値である MaxExecutionResources は、最小同時実行レベルが、コンピューター上のハードウェア スレッド数と同じであることを示します。 MaxConcurrency に指定された値が、コンピューター上のハードウェア スレッド数を下回っており、なおかつ、MinConcurrency が MaxExecutionResources として指定された場合、MinConcurrency の値が MaxConcurrency の設定と一致するように減らされます。 有効な値: 負でない整数および特殊な値 MaxExecutionResources。 同時実行ランタイム スケジューラの構築に使用されるスケジューラ ポリシー、または、SchedulerKind ポリシー キーが UMSThreadDefault 値に設定されているポリシーでは、0 という値は無効です。 既定値: 1 |
SchedulerKind |
基になる実行コンテキスト用にスケジューラが利用するスレッドの種類。 詳細については、「SchedulerType 列挙型」を参照してください。 有効な値: SchedulerType 列挙型のメンバー (ThreadScheduler または UmsThreadDefault) 既定値: ThreadScheduler。 これは、すべてのオペレーティング システムで Win32 スレッドに変換されます。 |
SchedulingProtocol |
スケジューラによって使用されるスケジューリング アルゴリズムを表します。 詳細については、「SchedulingProtocolType 列挙型」を参照してください。 有効な値: SchedulingProtocolType 列挙型のメンバー (EnhanceScheduleGroupLocality または EnhanceForwardProgress) 既定値: EnhanceScheduleGroupLocality |
TargetOversubscriptionFactor |
ハードウェア スレッドあたりの暫定的な仮想プロセッサ数。 ターゲット オーバーサブスクリプション係数は、コンピューター上のハードウェア スレッドに合わせて MaxConcurrency を調整する関係上、リソース マネージャーによって必要に応じて増やされます。 有効な値: 正の整数 既定値: 1 |
必要条件
ヘッダー: concrt.h
名前空間: Concurrency