IUMSScheduler 結構
工作排程器抽象概念的介面,需要並行執行階段的資源管理員將可使用者模式排程的 (UMS) 執行緒傳遞給它。 資源管理員會使用這個介面與 UMS 執行緒排程器進行通訊。 IUMSScheduler
介面繼承自 IScheduler
介面。
語法
struct IUMSScheduler : public IScheduler;
成員
公用方法
名稱 | 描述 |
---|---|
IUMSScheduler::SetCompletionList | IUMSCompletionList 將介面指派給UMS線程排程器。 |
備註
如果您要實作與 Resource Manager 通訊的自定義排程器,而且您想要將 UMS 線程交給排程器,而不是一般的 Win32 線程,您應該提供 介面的實作 IUMSScheduler
。 此外,您應該將排程器原則索引鍵 SchedulerKind
的原則值設定為 UmsThreadDefault
。 如果原則指定 UMS 線程,傳遞為 IResourceManager::RegisterScheduler 方法的介面必須是IUMSScheduler
介面。IScheduler
Resource Manager 只能在具有 UMS 功能的作業系統上,將 UMS 線程交給您。 具有 Windows 7 版和更新版本的 64 位作業系統支援 UMS 線程。 如果您建立排程器原則, SchedulerKind
並將金鑰設定為 值 UmsThreadDefault
,且基礎平臺不支援 UMS,該原則上的索引鍵值 SchedulerKind
將會變更為 值 ThreadScheduler
。 您應該一律先讀回此原則值,再預期會收到UMS線程。
介面 IUMSScheduler
是排程器與 Resource Manager 之間雙向通道的一端。 另一端是由 IResourceManager
Resource Manager 實作的 和 ISchedulerProxy
介面表示。
繼承階層架構
IUMSScheduler
需求
標頭: concrtrm.h
命名空間: concurrency
IUMSScheduler::SetCompletionList 方法
IUMSCompletionList
將介面指派給UMS線程排程器。
virtual void SetCompletionList(_Inout_ IUMSCompletionList* pCompletionList) = 0;
參數
pCompletionList
排程器的完成清單介面。 每個排程器都有單一清單。
備註
在排程器要求初始配置資源之後,Resource Manager 會在指定其想要 UMS 線程的排程器上叫用此方法。 排程器可以使用 IUMSCompletionList
介面來判斷UMS線程 Proxy何時解除封鎖。 只有從指派給UMS排程器之虛擬處理器根目錄上執行的線程 Proxy 存取此介面才有效。
另請參閱
concurrency 命名空間
PolicyElementKey
IScheduler 結構
IUMSCompletionList 結構
IResourceManager 結構