SchedulerPolicy – třída
Třída SchedulerPolicy
obsahuje sadu párů klíč/hodnota, jeden pro každý prvek zásady, který řídí chování instance plánovače.
Syntaxe
class SchedulerPolicy;
Členové
Veřejné konstruktory
Název | Popis |
---|---|
SchedulerPolicy | Přetíženo. Vytvoří novou zásadu plánovače a naplní ji hodnotami pro klíče zásad podporované plánovači Concurrency Runtime a Resource Managerem. |
~SchedulerPolicy – destruktor | Zničí zásadu plánovače. |
Veřejné metody
Název | Popis |
---|---|
GetPolicyValue | Načte hodnotu klíče zásady zadaného key jako parametr. |
SetConcurrencyLimits | Současně nastaví objekt MinConcurrency a MaxConcurrency zásady SchedulerPolicy . |
SetPolicyValue | Nastaví hodnotu klíče zásady zadaného key jako parametr a vrátí starou hodnotu. |
Veřejné operátory
Název | Popis |
---|---|
operator= | Přiřadí zásadu plánovače z jiné zásady plánovače. |
Poznámky
Další informace o zásadách, které lze řídit pomocí SchedulerPolicy
třídy, naleznete v tématu PolicyElementKey.
Hierarchie dědičnosti
SchedulerPolicy
Požadavky
Hlavička: concrt.h, concrtrm.h
Namespace: souběžnost
GetPolicyValue
Načte hodnotu klíče zásady zadaného key
jako parametr.
unsigned int GetPolicyValue(PolicyElementKey key) const;
Parametry
key
Klíč zásady pro načtení hodnoty.
Návratová hodnota
Pokud je klíč zadaný parametrem key
podporovaný, hodnota zásady pro přetypování klíče na hodnotu unsigned int
.
Poznámky
Metoda vyvolá invalid_scheduler_policy_key pro neplatný klíč zásady.
operator=
Přiřadí zásadu plánovače z jiné zásady plánovače.
SchedulerPolicy& operator= (const SchedulerPolicy& _RhsPolicy);
Parametry
_RhsPolicy
Zásady, které se mají přiřadit k této zásadě.
Návratová hodnota
Odkaz na zásady plánovače.
Poznámky
Nejpohodlnější způsob, jak definovat novou zásadu plánovače, je často zkopírovat existující zásadu a upravit ji pomocí SetPolicyValue
metod nebo SetConcurrencyLimits
metod.
SchedulerPolicy
Vytvoří novou zásadu plánovače a naplní ji hodnotami pro klíče zásad podporované plánovači Concurrency Runtime a Resource Managerem.
SchedulerPolicy();
SchedulerPolicy(
size_t _PolicyKeyCount,
...);
SchedulerPolicy(
const SchedulerPolicy& _SrcPolicy);
Parametry
_PolicyKeyCount
Počet párů klíč/hodnota, které následují za parametrem _PolicyKeyCount
.
_SrcPolicy
Zdrojová zásada, která se má kopírovat.
Poznámky
První konstruktor vytvoří novou zásadu plánovače, kde se všechny zásady inicializují na výchozí hodnoty.
Druhý konstruktor vytvoří novou zásadu plánovače, která používá styl pojmenovaného parametru inicializace. Hodnoty za parametrem _PolicyKeyCount
se zadají jako páry klíč/hodnota. Jakýkoli klíč zásad, který není zadán v tomto konstruktoru, bude mít výchozí hodnotu. Tento konstruktor může vyvolat výjimky invalid_scheduler_policy_key, invalid_scheduler_policy_value nebo invalid_scheduler_policy_thread_specification.
Třetí konstruktor je konstruktor kopírování. Nejpohodlnější způsob, jak definovat novou zásadu plánovače, je často zkopírovat existující zásadu a upravit ji pomocí SetPolicyValue
metod nebo SetConcurrencyLimits
metod.
~SchedulerPolicy
Zničí zásadu plánovače.
~SchedulerPolicy();
SetConcurrencyLimits
Současně nastaví objekt MinConcurrency
a MaxConcurrency
zásady SchedulerPolicy
.
void SetConcurrencyLimits(
unsigned int _MinConcurrency,
unsigned int _MaxConcurrency = MaxExecutionResources);
Parametry
_MinConcurrency
Hodnota MinConcurrency
klíče zásady.
_MaxConcurrency
Hodnota MaxConcurrency
klíče zásady.
Poznámky
Metoda vyvolá invalid_scheduler_policy_thread_specification , pokud je hodnota zadaná pro MinConcurrency
zásadu větší než hodnota zadaná pro zásadu MaxConcurrency
.
Metoda může také vyvolat invalid_scheduler_policy_value pro jiné neplatné hodnoty.
SetPolicyValue
Nastaví hodnotu klíče zásady zadaného key
jako parametr a vrátí starou hodnotu.
unsigned int SetPolicyValue(
PolicyElementKey key,
unsigned int value);
Parametry
key
Klíč zásad pro nastavení hodnoty.
value
Hodnota, na kterou chcete nastavit klíč zásady.
Návratová hodnota
Pokud je klíč zadaný parametrem key
podporovaný, stará hodnota zásady pro přetypování klíče na hodnotu unsigned int
.
Poznámky
Metoda vyvolá invalid_scheduler_policy_key pro neplatný klíč zásady nebo jakýkoli klíč zásad, jehož hodnotu nemůže metoda nastavit SetPolicyValue
.
Metoda vyvolá invalid_scheduler_policy_value pro hodnotu, která není podporována pro klíč určený parametrem key
.
Všimněte si, že tato metoda není povolena k nastavení MinConcurrency
zásad.MaxConcurrency
K nastavení těchto hodnot použijte SetConcurrencyLimits metoda.
Viz také
concurrency – obor názvů
PolicyElementKey
CurrentScheduler – třída
Scheduler – třída
Plánovač úloh