Struktura rozhraní IUMSScheduler
Rozhraní pro abstrakci pracovního plánovače, který chce, aby Správce prostředků modulu Concurrency Runtime předal vlákno schedulovatelným uživatelským režimem (UMS). Resource Manager používá toto rozhraní ke komunikaci s plánovači vláken UMS. Rozhraní IUMSScheduler
dědí z IScheduler
rozhraní.
Syntaxe
struct IUMSScheduler : public IScheduler;
Členové
Veřejné metody
Název | Popis |
---|---|
IUMSScheduler::SetCompletionList | IUMSCompletionList Přiřadí rozhraní plánovači vláken UMS. |
Poznámky
Pokud implementujete vlastní plánovač, který komunikuje s Resource Managerem a chcete, aby byla vlákna UMS předána plánovači místo obyčejných vláken Win32, měli byste poskytnout implementaci IUMSScheduler
rozhraní. Kromě toho byste měli nastavit hodnotu zásady pro klíč SchedulerKind
zásad plánovače, který má být UmsThreadDefault
. Pokud zásada určuje vlákno UMS, rozhraní, IScheduler
které je předáno jako parametr IResourceManager::RegisterScheduler metoda musí být IUMSScheduler
rozhraní.
Resource Manager vám může předat vlákna UMS pouze v operačních systémech, které mají funkci UMS. 64bitové operační systémy s verzí Windows 7 a vyšší podporují vlákna UMS. Pokud vytvoříte zásadu plánovače s SchedulerKind
klíčem nastaveným na hodnotu UmsThreadDefault
a podkladová platforma nepodporuje UmS, hodnota SchedulerKind
klíče v této zásadě se změní na hodnotu ThreadScheduler
. Tuto hodnotu zásad byste si měli vždy přečíst před tím, než očekáváte příjem vláken UMS.
Rozhraní IUMSScheduler
je jedním ze dvoucestných kanálů komunikace mezi plánovačem a Resource Managerem. Druhý konec je reprezentován IResourceManager
rozhraními ISchedulerProxy
a rozhraními, které jsou implementovány Resource Managerem.
Hierarchie dědičnosti
IUMSScheduler
Požadavky
Hlavička: concrtrm.h
Namespace: souběžnost
IUMSScheduler::SetCompletionList – metoda
IUMSCompletionList
Přiřadí rozhraní plánovači vláken UMS.
virtual void SetCompletionList(_Inout_ IUMSCompletionList* pCompletionList) = 0;
Parametry
pCompletionList
Rozhraní seznamu dokončení plánovače. Pro každý plánovač existuje jeden seznam.
Poznámky
Resource Manager vyvolá tuto metodu v plánovači, který určuje, že chce vlákna UMS, jakmile plánovač požaduje počáteční přidělení prostředků. Plánovač může rozhraní použít IUMSCompletionList
k určení, kdy proxy servery vláken UMS odblokovaly. Přístup k tomuto rozhraní je platný pouze z proxy vláken spuštěného v kořenovém adresáři virtuálního procesoru přiřazeného plánovači UMS.
Viz také
concurrency – obor názvů
PolicyElementKey
IScheduler – struktura
IUMSCompletionList – struktura
IResourceManager – struktura