次の方法で共有


Scheduler クラス

同時実行ランタイム スケジューラの抽象化を表します。

class Scheduler;

メンバー

プロテクト コンストラクター

名前

説明

Scheduler::Scheduler コンストラクター

Scheduler クラスのオブジェクトが作成されるのは、ファクトリ メソッドを使用した場合か、暗黙的に作成された場合のみです。

Scheduler::~Scheduler デストラクター

Scheduler クラスのオブジェクトは、そのオブジェクトに対する外部参照が消滅したときに、暗黙的に破棄されます。

パブリック メソッド

名前

説明

Scheduler::Attach メソッド

スケジューラを呼び出し元コンテキストにアタッチします。 このメソッドから制御が戻った後、このスケジューラによって呼び出し元コンテキストが管理され、このスケジューラが現在のスケジューラになります。

Scheduler::Create メソッド

_Policy パラメーターによって動作が指定されたスケジュールを新規に作成し、そのスケジューラに初期参照を設定した後、そのスケジューラへのポインターを返します。

Scheduler::CreateScheduleGroup メソッド

オーバーロードされます。 スケジューラ内で新しいスケジュール グループを作成します。 _Placement パラメーターを受け取るバージョンと、そのパラメーターで指定された場所に実行に向かって偏られた新しく作成されたスケジュール グループ内のタスクが実行されます。

Scheduler::GetNumberOfVirtualProcessors メソッド

スケジューラの仮想プロセッサの現在の数を返します。

Scheduler::GetPolicy メソッド

スケジューラの作成に使用されたポリシーのコピーを返します。

Scheduler::Id メソッド

スケジューラの一意の識別子を返します。

Scheduler::IsAvailableLocation メソッド

指定された位置がスケジューラで使用できるかどうかを判定します。

Scheduler::Reference メソッド

スケジューラの参照カウントをインクリメントします。

Scheduler::RegisterShutdownEvent メソッド

スケジューラがシャットダウンし、自分自身を破棄するとき、_Event パラメーターに渡された Windows イベント ハンドルをシグナル状態にします。 イベントがシグナル状態になった時点で、スケジューラに割り当てられていたすべての処理が完了します。 複数のシャットダウン イベントをこのメソッドに登録することもできます。

Scheduler::Release メソッド

スケジューラの参照カウントをデクリメントします。

Scheduler::ResetDefaultSchedulerPolicy メソッド

ランタイムの既定に既定のスケジューラ ポリシーをリセットします。 既定のスケジューラが作成されるときに、ランタイムの既定のポリシー設定が使用されます。

Scheduler::ScheduleTask メソッド

オーバーロードされます。 スケジューラ内の軽量タスクをスケジュールします。 軽量タスクは実行時に決定されたスケジュール グループに配置されます。 _Placement パラメーターを受け取るバージョンは、指定された位置に実行に向かって偏られているタスクを実行します。

Scheduler::SetDefaultSchedulerPolicy メソッド

ユーザー定義のポリシーを使用して既定のスケジューラを作成できるようにします。 このメソッドは、既定のスケジューラがプロセス内に存在しない場合のみ呼び出すことができます。 既定のポリシーを設定すると、SetDefaultSchedulerPolicy または ResetDefaultSchedulerPolicy のメソッドへの有効な呼び出しまで有効です。

解説

同時実行ランタイム スケジューラは、アプリケーションによってキューに入れられた作業を実行するために、オペレーティング システムの実行コンテキストに、スレッドなど、マップする実行コンテキストが使用されます。 スケジューラの同時実行レベルは、リソース マネージャーによって許可された仮想プロセッサの数と常に等しくなります。 仮想プロセッサとは、処理リソースを抽象化したものであり、基になるシステムのハードウェア スレッドに対応しています。 指定された時点に 1 つの仮想プロセッサで実行できるスケジューラ コンテキストは 1 つのみです。

同時実行ランタイムによって、プロセスごとに既定のスケジューラが作成され、並列処理が実行されます。 さらに、独自のスケジューラ インスタンスを作成し、このクラスを使用してそれを操作できます。

継承階層

Scheduler

必要条件

ヘッダー: concrt.h

名前空間: concurrency

参照

関連項目

concurrency 名前空間

Scheduler クラス

PolicyElementKey 列挙型

概念

タスク スケジューラ (同時実行ランタイム)