Partager via


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