Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De SchedulerPolicy klasse bevat een set sleutel-/waardeparen, één voor elk beleidselement, waarmee het gedrag van een scheduler-exemplaar wordt bepaald.
Syntaxis
class SchedulerPolicy;
Leden
Openbare constructors
| Naam | Description |
|---|---|
| SchedulerPolicy | Overbelast. Hiermee wordt een nieuw schedulerbeleid gemaakt en gevuld met waarden voor beleidssleutels die worden ondersteund door de Concurrency Runtime-planners en de Resource Manager. |
| ~SchedulerPolicy Destructor | Vernietigt een planningbeleid. |
Openbare methoden
| Naam | Description |
|---|---|
| GetPolicyValue | Haalt de waarde van de beleidssleutel op die is opgegeven als de key parameter. |
| SetConcurrencyLimits | Hiermee stelt u tegelijkertijd het MinConcurrency en MaxConcurrency beleid voor het SchedulerPolicy object in. |
| SetPolicyValue | Hiermee stelt u de waarde van de beleidssleutel in die is opgegeven als de key parameter en wordt de oude waarde geretourneerd. |
Openbare operators
| Naam | Description |
|---|---|
| operator= | Hiermee wijst u het scheduler-beleid toe vanuit een ander scheduler-beleid. |
Opmerkingen
Zie SchedulerPolicy voor meer informatie over het beleid dat kan worden beheerd met behulp van de klasse.
Overnamehiërarchie
SchedulerPolicy
Requirements
Koptekst: concrt.h, concrtrm.h
Naamruimte: concurrentie
GetPolicyValue
Haalt de waarde van de beleidssleutel op die is opgegeven als de key parameter.
unsigned int GetPolicyValue(PolicyElementKey key) const;
Parameterwaarden
sleutel
De beleidssleutel waarvoor een waarde moet worden opgehaald.
Retourwaarde
Als de sleutel, gespecificeerd door de key parameter, wordt ondersteund, wordt de beleidswaarde voor de sleutel gecast naar een unsigned int.
Opmerkingen
De methode genereert invalid_scheduler_policy_key voor een ongeldige beleidssleutel.
operator=
Hiermee wijst u het scheduler-beleid toe vanuit een ander scheduler-beleid.
SchedulerPolicy& operator= (const SchedulerPolicy& _RhsPolicy);
Parameterwaarden
_RhsPolicy
Het beleid dat toegewezen moet worden aan dit beleid.
Retourwaarde
Een verwijzing naar het scheduler-beleid.
Opmerkingen
Vaak is de handigste manier om een nieuw scheduler-beleid te definiëren een bestaand beleid te kopiëren en te wijzigen met behulp van de SetPolicyValue of SetConcurrencyLimits methoden.
SchedulerPolicy
Maakt een nieuw scheduler-beleid aan en geeft het waarden voor beleidssleutels die worden ondersteund door Concurrency Runtime-schedulers en de Resource Manager.
SchedulerPolicy();
SchedulerPolicy(
size_t _PolicyKeyCount,
...);
SchedulerPolicy(
const SchedulerPolicy& _SrcPolicy);
Parameterwaarden
_PolicyKeyCount
Het aantal sleutel-/waardeparen dat de _PolicyKeyCount parameter volgt.
_SrcPolicy
Het bronbeleid dat moet worden gekopieerd.
Opmerkingen
De eerste constructor maakt een nieuw scheduler-beleid waarin alle beleidsregels worden geïnitialiseerd naar de standaardwaarden.
De tweede constructor maakt een nieuw scheduler-beleid dat gebruikmaakt van een benoemde parameterstijl van initialisatie. Waarden na de _PolicyKeyCount parameter worden opgegeven als sleutel-waardeparen. Een beleidssleutel die niet in deze constructor is opgegeven, heeft de standaardwaarde. Deze constructor kan de uitzonderingen invalid_scheduler_policy_key, invalid_scheduler_policy_value of invalid_scheduler_policy_thread_specification genereren.
De derde constructor is een kopieconstructor. Vaak is de handigste manier om een nieuw scheduler-beleid te definiëren een bestaand beleid te kopiëren en te wijzigen met behulp van de SetPolicyValue of SetConcurrencyLimits methoden.
~SchedulerPolicy
Vernietigt een planningsbeleid.
~SchedulerPolicy();
Concurentielimieten instellen
Hiermee stelt u tegelijkertijd het MinConcurrency en MaxConcurrency beleid voor het SchedulerPolicy object in.
void SetConcurrencyLimits(
unsigned int _MinConcurrency,
unsigned int _MaxConcurrency = MaxExecutionResources);
Parameterwaarden
_MinConcurrency
De waarde voor de MinConcurrency beleidssleutel.
_MaxConcurrency
De waarde voor de MaxConcurrency beleidssleutel.
Opmerkingen
De methode genereert invalid_scheduler_policy_thread_specification als de waarde die is opgegeven voor het MinConcurrency beleid groter is dan de waarde die is opgegeven voor het MaxConcurrency beleid.
De methode kan ook invalid_scheduler_policy_value voor andere ongeldige waarden gooien.
SetPolicyValue
Hiermee stelt u de waarde van de beleidssleutel in die is opgegeven als de key parameter en wordt de oude waarde geretourneerd.
unsigned int SetPolicyValue(
PolicyElementKey key,
unsigned int value);
Parameterwaarden
sleutel
De beleidssleutel waarvoor een waarde moet worden ingesteld.
value
De waarde om de beleidssleutel in te stellen.
Retourwaarde
Indien de door de key parameter opgegeven sleutel wordt ondersteund, wordt de oude beleidswaarde voor de sleutel gecast naar een unsigned int.
Opmerkingen
De methode genereert invalid_scheduler_policy_key voor een ongeldige beleidssleutel of een beleidssleutel waarvan de waarde niet door de SetPolicyValue methode kan worden ingesteld.
De methode genereert invalid_scheduler_policy_value voor een waarde die niet wordt ondersteund voor de sleutel die is opgegeven door de key parameter.
Houd er rekening mee dat deze methode niet is toegestaan om het MinConcurrency of MaxConcurrency beleid in te stellen. Als u deze waarden wilt instellen, gebruikt u de methode SetConcurrencyLimits .
Zie ook
concurrentie Namespace
PolicyElementKey
CurrentScheduler-klasse
Scheduler-klasse
Taakplanner