SchedulerPolicy, classe
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 | Surcharge. Construit une nouvelle stratégie de planificateur et la remplit avec des valeurs pour les clés de stratégie prises en charge par les planificateurs du runtime d’accès concurrentiel et 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 stratégies et MaxConcurrency les MinConcurrency stratégies sur l’objetSchedulerPolicy . |
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 : concurrency
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 key
paramètre est prise en charge, la valeur de stratégie pour la conversion de clé 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 stratégie du planificateur à partir d’une autre stratégie 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 ou SetConcurrencyLimits
des SetPolicyValue
méthodes.
SchedulerPolicy
Construit une nouvelle stratégie de planificateur et la remplit avec des valeurs pour les clés de stratégie prises en charge par les planificateurs du runtime d’accès concurrentiel et 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
Stratégie source à copier.
Notes
Le premier constructeur crée une stratégie de planificateur où toutes les stratégies seront initialisées sur leurs valeurs par défaut.
Le deuxième constructeur crée une stratégie de planificateur qui utilise un style de paramètre nommé d’initialisation. Valeurs après que le _PolicyKeyCount
paramètre est fourni en tant que 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 ou SetConcurrencyLimits
des SetPolicyValue
méthodes.
~SchedulerPolicy
Détruit une stratégie de planificateur.
~SchedulerPolicy();
SetConcurrencyLimits
Définit simultanément les stratégies et MaxConcurrency
les MinConcurrency
stratégies sur l’objetSchedulerPolicy
.
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
stratégie est supérieure à celle spécifiée pour la MaxConcurrency
stratégie.
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 key
paramètre est prise en charge, l’ancienne valeur de stratégie pour la conversion de clé en .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 ou MaxConcurrency
les MinConcurrency
stratégies. Pour définir ces valeurs, utilisez la méthode SetConcurrencyLimits .
Voir aussi
accès concurrentiel Namespace
PolicyElementKey
CurrentScheduler, classe
Scheduler, classe
Planificateur de tâches