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.
La classe SchedulerPolicy contient un jeu de paires clé/valeur, un pour chaque élément de stratégie, qui contrôlent le comportement d'une instance du planificateur.
Syntaxe
class SchedulerPolicy;
Membres
Constructeurs publics
| Nom | Description |
|---|---|
| SchedulerPolicy | Surchargé. Construit une nouvelle politique de planificateur et la remplit avec des valeurs pour les clés de politique prises en charge par les planificateurs du Runtime de concurrence et le Resource Manager. |
| ~SchedulerPolicy Destructor | Détruit une stratégie de planificateur. |
Méthodes publiques
| Nom | Description |
|---|---|
| GetPolicyValue | Récupère la valeur de la clé de stratégie fournie en tant que key paramètre. |
| SetConcurrencyLimits | Définit simultanément les MinConcurrency et MaxConcurrency sur l’objet SchedulerPolicy. |
| SetPolicyValue | Définit la valeur de la clé de stratégie fournie en tant que key paramètre et retourne l’ancienne valeur. |
Opérateurs publics
| Nom | Description |
|---|---|
| operator= | Affecte la stratégie du planificateur à partir d’une autre stratégie de planificateur. |
Notes
Pour plus d’informations sur les stratégies qui peuvent être contrôlées à l’aide de la SchedulerPolicy classe, consultez PolicyElementKey.
Hiérarchie d'héritage
SchedulerPolicy
Spécifications
En-tête : concrt.h, concrtrm.h
Espace de noms : concurrence
GetPolicyValue
Récupère la valeur de la clé de stratégie fournie en tant que key paramètre.
unsigned int GetPolicyValue(PolicyElementKey key) const;
Paramètres
key
Clé de stratégie pour laquelle récupérer une valeur.
Valeur de retour
Si la clé spécifiée par le paramètre key est prise en charge, la valeur de stratégie pour la clé est convertie en un unsigned int.
Notes
La méthode lève invalid_scheduler_policy_key pour une clé de stratégie non valide.
opérateur =
Affecte la politique du planificateur à partir d'une autre politique de planificateur.
SchedulerPolicy& operator= (const SchedulerPolicy& _RhsPolicy);
Paramètres
_RhsPolicy
Stratégie à affecter à cette stratégie.
Valeur de retour
Référence à la stratégie du planificateur.
Notes
Souvent, la façon la plus pratique de définir une nouvelle stratégie de planificateur consiste à copier une stratégie existante et à la modifier à l'aide des méthodes SetPolicyValue ou SetConcurrencyLimits.
SchedulerPolicy
Construit une nouvelle politique de planificateur et la remplit avec des valeurs pour les clés de politique prises en charge par les planificateurs du Runtime de concurrence et le Resource Manager.
SchedulerPolicy();
SchedulerPolicy(
size_t _PolicyKeyCount,
...);
SchedulerPolicy(
const SchedulerPolicy& _SrcPolicy);
Paramètres
_PolicyKeyCount
Nombre de paires clé/valeur qui suivent le _PolicyKeyCount paramètre.
_SrcPolicy
Politique source à copier.
Notes
Le premier constructeur crée une nouvelle politique de planification où toutes les politiques seront initialisées sur leurs valeurs par défaut.
Le second constructeur crée une nouvelle politique de planification utilisant un style d'initialisation par paramètre nommé. Les valeurs après le paramètre _PolicyKeyCount sont fournies sous forme de paires clé/valeur. Toute clé de stratégie qui n’est pas spécifiée dans ce constructeur aura sa valeur par défaut. Ce constructeur peut lever les exceptions invalid_scheduler_policy_key, invalid_scheduler_policy_value ou invalid_scheduler_policy_thread_specification.
Le troisième constructeur est un constructeur de copie. Souvent, la façon la plus pratique de définir une nouvelle stratégie de planificateur consiste à copier une stratégie existante et à la modifier à l’aide des méthodes SetPolicyValue ou SetConcurrencyLimits.
~SchedulerPolicy
Détruit une stratégie de planificateur.
~SchedulerPolicy();
DéfinirLesLimitesDeConcurrence
Définit simultanément les MinConcurrency et MaxConcurrency sur l’objet SchedulerPolicy.
void SetConcurrencyLimits(
unsigned int _MinConcurrency,
unsigned int _MaxConcurrency = MaxExecutionResources);
Paramètres
_MinConcurrency
Valeur de la MinConcurrency clé de stratégie.
_MaxConcurrency
Valeur de la MaxConcurrency clé de stratégie.
Notes
La méthode lève invalid_scheduler_policy_thread_specification si la valeur spécifiée pour la MinConcurrency politique est supérieure à celle spécifiée pour la MaxConcurrency politique.
La méthode peut également lever invalid_scheduler_policy_value pour d’autres valeurs non valides.
SetPolicyValue
Définit la valeur de la clé de stratégie fournie en tant que key paramètre et retourne l’ancienne valeur.
unsigned int SetPolicyValue(
PolicyElementKey key,
unsigned int value);
Paramètres
key
Clé de stratégie pour laquelle définir une valeur.
valeur
Valeur à laquelle définir la clé de stratégie.
Valeur de retour
Si la clé spécifiée par le paramètre key est prise en charge, l'ancienne valeur de stratégie pour la clé est convertie en un unsigned int.
Notes
La méthode lève invalid_scheduler_policy_key pour une clé de stratégie non valide ou toute clé de stratégie dont la valeur ne peut pas être définie par la SetPolicyValue méthode.
La méthode lève invalid_scheduler_policy_value pour une valeur qui n’est pas prise en charge pour la clé spécifiée par le key paramètre.
Notez que cette méthode n’est pas autorisée à définir les stratégies MinConcurrency ou MaxConcurrency. Pour définir ces valeurs, utilisez la méthode SetConcurrencyLimits .
Voir aussi
concurrence Namespace
PolicyElementKey
CurrentScheduler, classe
Scheduler, classe
Planificateur de tâches