IUMSScheduler 構造体

同時実行ランタイムのリソース マネージャーによってユーザー モード スケジュール可能 (UMS) スレッドが渡される必要がある作業スケジューラの抽象化のインターフェイスです。 リソース マネージャーでは、このインターフェイスを使用して UMS スレッド スケジューラと通信します。 IUMSScheduler インターフェイスは IScheduler インターフェイスを継承します。

struct IUMSScheduler : public IScheduler;

メンバー

パブリック メソッド

名前

説明

IUMSScheduler::SetCompletionList メソッド

UMS スレッド スケジューラに IUMSCompletionList インターフェイスを割り当てます。

解説

リソース マネージャーと通信するカスタム スケジューラを実装するときに、スケジューラに Win32 スレッドではなく UMS スレッドを渡す場合には、IUMSScheduler インターフェイスの実装を提供する必要があります。 さらに、スケジューラ ポリシー キー SchedulerKind のポリシー値を UmsThreadDefault に設定する必要があります。 ポリシーによって UMS スレッドが指定される場合、IResourceManager::RegisterScheduler メソッドにパラメーターとして渡される IScheduler インターフェイスは、IUMSScheduler インターフェイスであることが必要です。

リソース マネージャーは、UMS 機能を持つオペレーティング システムでのみ、UMS スレッドを渡します。UMS スレッドは、Windows 7 以上の 64 ビット版オペレーティング システムでサポートされます。 SchedulerKind キーの値が UmsThreadDefault に設定されているスケジューラ ポリシーを作成するとき、基になるプラットフォームで UMS がサポートされていない場合、そのポリシーの SchedulerKind キーの値は ThreadScheduler に変更されます。 UMS スレッドを受け取ることを想定する場合は、このポリシーの値を必ず確認してください。

IUMSScheduler インターフェイスは、スケジューラとリソース マネージャーを結ぶ双方向チャネルの一方の端を表します。 もう一方は、IResourceManager インターフェイスと ISchedulerProxy インターフェイスで表されます。この 2 つは、リソース マネージャーによって実装されます。

継承階層

IScheduler

IUMSScheduler

必要条件

ヘッダー: concrtrm.h

名前空間: concurrency

参照

関連項目

concurrency 名前空間

PolicyElementKey 列挙型

IScheduler 構造体

IUMSCompletionList 構造体

IResourceManager 構造体