Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Interface avec une abstraction d'un planificateur de tâches qui veut que le gestionnaire des ressources du runtime d'accès concurrentiel lui remette des threads UMS (User-Mode Scheduling). Le gestionnaire des ressources utilise cette interface pour communiquer avec les planificateurs de threads UMS. L'interface IUMSScheduler hérite de l'interface IScheduler .
Syntaxe
struct IUMSScheduler : public IScheduler;
Membres
Méthodes publiques
| Nom | Description |
|---|---|
| IUMSScheduler ::SetCompletionList | Affecte une IUMSCompletionList interface à un planificateur de threads UMS. |
Notes
Si vous implémentez un planificateur personnalisé qui communique avec Resource Manager et que vous souhaitez que les threads UMS soient remis à votre planificateur au lieu de threads Win32 ordinaires, vous devez fournir une implémentation de l’interface IUMSScheduler . En outre, vous devez définir la valeur de stratégie pour que la clé SchedulerKind de stratégie du planificateur soit UmsThreadDefault. Si la stratégie spécifie le thread UMS, l’interface IScheduler transmise en tant que paramètre à la méthode IResourceManager ::RegisterScheduler doit être une IUMSScheduler interface.
Resource Manager est en mesure de vous transmettre des threads UMS uniquement sur les systèmes d’exploitation dotés de la fonctionnalité UMS. Les systèmes d’exploitation 64 bits avec windows 7 et versions ultérieures prennent en charge les threads UMS. Si vous créez une stratégie de planificateur avec la clé définie sur la SchedulerKind valeur UmsThreadDefault et que la plateforme sous-jacente ne prend pas en charge UMS, la valeur de la SchedulerKind clé sur cette stratégie sera remplacée par la valeur ThreadScheduler. Vous devez toujours lire cette valeur de stratégie avant de vous attendre à recevoir des threads UMS.
L’interface IUMSScheduler est une extrémité d’un canal bidirectionnel de communication entre un planificateur et Resource Manager. L’autre extrémité est représentée par les IResourceManager interfaces, ISchedulerProxy qui sont implémentées par Resource Manager.
Hiérarchie d'héritage
IUMSScheduler
Spécifications
En-tête : concrtrm.h
Espace de noms : concurrency
IUMSScheduler ::SetCompletionList, méthode
Affecte une IUMSCompletionList interface à un planificateur de threads UMS.
virtual void SetCompletionList(_Inout_ IUMSCompletionList* pCompletionList) = 0;
Paramètres
pCompletionList
Interface de liste de saisie semi-automatique pour le planificateur. Il existe une seule liste par planificateur.
Notes
Resource Manager appelle cette méthode sur un planificateur qui spécifie qu’elle souhaite des threads UMS, une fois que le planificateur a demandé une allocation initiale de ressources. Le planificateur peut utiliser l’interface IUMSCompletionList pour déterminer quand les proxys de thread UMS ont été débloqués. Il est valide uniquement pour accéder à cette interface à partir d’un proxy de thread s’exécutant sur une racine de processeur virtuel affectée au planificateur UMS.
Voir aussi
accès concurrentiel Namespace
PolicyElementKey
IScheduler, structure
IUMSCompletionList, structure
IResourceManager, structure