Classe SchedulerPolicy
La classe SchedulerPolicy
contiene un set di coppie chiave/valore, uno per ogni elemento dei criteri, che controllano il comportamento di un'istanza dell'utilità di pianificazione.
Sintassi
class SchedulerPolicy;
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
SchedulerPolicy | Con overload. Costruisce un nuovo criterio dell'utilità di pianificazione e lo popola con i valori per le chiavi dei criteri supportate dalle utilità di pianificazione del runtime di concorrenza e da Resource Manager. |
Distruttore ~SchedulerPolicy | Elimina definitivamente un criterio dell'utilità di pianificazione. |
Metodi pubblici
Nome | Descrizione |
---|---|
GetPolicyValue | Recupera il valore della chiave dei criteri fornita come key parametro. |
SetConcurrencyLimits | Imposta contemporaneamente i MinConcurrency criteri e MaxConcurrency sull'oggetto SchedulerPolicy . |
SetPolicyValue | Imposta il valore della chiave dei criteri fornita come key parametro e restituisce il valore precedente. |
Operatori pubblici
Nome | Descrizione |
---|---|
operator= | Assegna i criteri dell'utilità di pianificazione da un altro criterio dell'utilità di pianificazione. |
Osservazioni:
Per altre informazioni sui criteri che possono essere controllati tramite la SchedulerPolicy
classe , vedere PolicyElementKey.
Gerarchia di ereditarietà
SchedulerPolicy
Requisiti
Intestazione: concrt.h, concrtrm.h
Spazio dei nomi: Concurrency
GetPolicyValue
Recupera il valore della chiave dei criteri fornita come key
parametro.
unsigned int GetPolicyValue(PolicyElementKey key) const;
Parametri
key
Chiave dei criteri per cui recuperare un valore.
Valore restituito
Se la chiave specificata dal key
parametro è supportata, il valore del criterio per la chiave di cui è stato eseguito il cast a un oggetto unsigned int
.
Osservazioni:
Il metodo genererà invalid_scheduler_policy_key per una chiave di criteri non valida.
operator=
Assegna i criteri dell'utilità di pianificazione da un altro criterio dell'utilità di pianificazione.
SchedulerPolicy& operator= (const SchedulerPolicy& _RhsPolicy);
Parametri
_RhsPolicy
Criteri da assegnare a questo criterio.
Valore restituito
Riferimento ai criteri dell'utilità di pianificazione.
Osservazioni:
Spesso, il modo più semplice per definire nuovi criteri dell'utilità di pianificazione consiste nel copiare i criteri esistenti e nel modificarli tramite i metodi SetPolicyValue
o SetConcurrencyLimits
.
SchedulerPolicy
Costruisce un nuovo criterio dell'utilità di pianificazione e lo popola con i valori per le chiavi dei criteri supportate dalle utilità di pianificazione del runtime di concorrenza e da Resource Manager.
SchedulerPolicy();
SchedulerPolicy(
size_t _PolicyKeyCount,
...);
SchedulerPolicy(
const SchedulerPolicy& _SrcPolicy);
Parametri
_PolicyKeyCount
Numero di coppie chiave/valore che seguono il _PolicyKeyCount
parametro .
_SrcPolicy
Criteri di origine da copiare.
Osservazioni:
Il primo costruttore crea un nuovo criterio dell'utilità di pianificazione in cui tutti i criteri verranno inizializzati sui valori predefiniti.
Il secondo costruttore crea un nuovo criterio dell'utilità di pianificazione che usa uno stile denominato-parametro di inizializzazione. I valori dopo che il _PolicyKeyCount
parametro vengono forniti come coppie chiave/valore. Qualsiasi chiave dei criteri non specificata in questo costruttore avrà il valore predefinito. Questo costruttore potrebbe generare le eccezioni invalid_scheduler_policy_key, invalid_scheduler_policy_value o invalid_scheduler_policy_thread_specification.
Il terzo costruttore è un costruttore di copia. Spesso, il modo più semplice per definire nuovi criteri dell'utilità di pianificazione consiste nel copiare i criteri esistenti e nel modificarli tramite i metodi SetPolicyValue
o SetConcurrencyLimits
.
~SchedulerPolicy
Elimina definitivamente un criterio dell'utilità di pianificazione.
~SchedulerPolicy();
SetConcurrencyLimits
Imposta contemporaneamente i MinConcurrency
criteri e MaxConcurrency
sull'oggetto SchedulerPolicy
.
void SetConcurrencyLimits(
unsigned int _MinConcurrency,
unsigned int _MaxConcurrency = MaxExecutionResources);
Parametri
_MinConcurrency
Valore per la chiave del MinConcurrency
criterio.
_MaxConcurrency
Valore per la chiave del MaxConcurrency
criterio.
Osservazioni:
Il metodo genererà invalid_scheduler_policy_thread_specification se il valore specificato per il MinConcurrency
criterio è maggiore di quello specificato per il MaxConcurrency
criterio.
Il metodo può anche generare invalid_scheduler_policy_value per altri valori non validi.
SetPolicyValue
Imposta il valore della chiave dei criteri fornita come key
parametro e restituisce il valore precedente.
unsigned int SetPolicyValue(
PolicyElementKey key,
unsigned int value);
Parametri
key
Chiave dei criteri per cui impostare un valore.
value
Valore su cui impostare la chiave dei criteri.
Valore restituito
Se la chiave specificata dal key
parametro è supportata, il valore del criterio precedente per la chiave di cui è stato eseguito il cast a un oggetto unsigned int
.
Osservazioni:
Il metodo genererà invalid_scheduler_policy_key per una chiave di criteri non valida o per qualsiasi chiave dei criteri il SetPolicyValue
cui valore non può essere impostato dal metodo .
Il metodo genererà invalid_scheduler_policy_value per un valore non supportato per la chiave specificata dal key
parametro .
Si noti che questo metodo non è autorizzato a impostare i MinConcurrency
criteri o MaxConcurrency
. Per impostare questi valori, usare il metodo SetConcurrencyLimits .
Vedi anche
Spazio dei nomi concurrency
PolicyElementKey
Classe CurrentScheduler
Classe Scheduler
Utilità di pianificazione