Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La clase SchedulerPolicy contiene un conjunto de pares clave-valor, uno para cada elemento de directiva, que controla el comportamiento de una instancia del programador.
Sintaxis
class SchedulerPolicy;
Miembros
Constructores públicos
| Nombre | Descripción |
|---|---|
| SchedulerPolicy | Sobrecargado Construye una nueva directiva de planificador y la llena con valores para claves de directiva admitidas por los planificadores del Tiempo de ejecución de simultaneidad y el Administrador de recursos. |
| ~SchedulerPolicy destructor | Destruye una política de planificación. |
Métodos públicos
| Nombre | Descripción |
|---|---|
| GetPolicyValue | Recupera el valor de la clave de directiva proporcionado como el parámetro key. |
| SetConcurrencyLimits | Simultáneamente establece las directivas MinConcurrency y MaxConcurrency en el objeto SchedulerPolicy. |
| SetPolicyValue | Establece el valor de la clave de directiva proporcionado como el parámetro key y devuelve el valor anterior. |
Operadores públicos
| Nombre | Descripción |
|---|---|
| operator= | Asigna la directiva de programador a partir de otra directiva de programador. |
Comentarios
Para obtener más información sobre las directivas que se pueden controlar usando la clase SchedulerPolicy, vea PolicyElementKey.
Jerarquía de herencia
SchedulerPolicy
Requisitos
Encabezado: concrt.h, concrtrm.h
Espacio de nombres: simultaneidad
GetPolicyValue
Recupera el valor de la clave de directiva proporcionado como el parámetro key.
unsigned int GetPolicyValue(PolicyElementKey key) const;
Parámetros
key
Clave de política para recuperar un valor.
Valor devuelto
Si se admite la clave especificada por el parámetro key, se interpreta el valor de directiva de la clave como un unsigned int.
Comentarios
El método lanzará invalid_scheduler_policy_key debido a una clave de directiva no válida.
operador =
Asigna la directiva de programador a partir de otra directiva de programador.
SchedulerPolicy& operator= (const SchedulerPolicy& _RhsPolicy);
Parámetros
_RhsPolicy
Política que se va a asignar a esta política.
Valor devuelto
Referencia a la directiva del programador.
Comentarios
A menudo, la manera más conveniente de definir una nueva directiva del programador es copiar una directiva existente y modificarla mediante los métodos SetPolicyValue o SetConcurrencyLimits.
SchedulerPolicy
Construye una nueva directiva de planificador y la llena con valores para claves de directiva admitidas por los planificadores del Tiempo de ejecución de simultaneidad y el Administrador de recursos.
SchedulerPolicy();
SchedulerPolicy(
size_t _PolicyKeyCount,
...);
SchedulerPolicy(
const SchedulerPolicy& _SrcPolicy);
Parámetros
_PolicyKeyCount
El número de pares clave-valor que sigue al parámetro _PolicyKeyCount.
_SrcPolicy
La política de origen a copiar.
Comentarios
El primer constructor crea una nueva política de planificador en la cual todas las políticas se inicializarán en sus valores predeterminados.
El segundo constructor crea una nueva política de planificación que usa un estilo de inicialización con parámetros nombrados. Los valores que aparecen después del parámetro _PolicyKeyCount se proporcionan como pares clave-valor. Cualquier clave de directiva que no se especifique en este constructor tendrá su valor predeterminado. Este constructor podría producir las excepciones invalid_scheduler_policy_key, invalid_scheduler_policy_value o invalid_scheduler_policy_thread_specification.
El tercer constructor es un constructor de copias. A menudo, la manera más conveniente de definir una nueva directiva del programador es copiar una directiva existente y modificarla mediante los métodos SetPolicyValue o SetConcurrencyLimits.
~SchedulerPolicy
Destruye una política de planificación.
~SchedulerPolicy();
SetConcurrencyLimits
Simultáneamente establece las directivas MinConcurrency y MaxConcurrency en el objeto SchedulerPolicy.
void SetConcurrencyLimits(
unsigned int _MinConcurrency,
unsigned int _MaxConcurrency = MaxExecutionResources);
Parámetros
_MinConcurrency
Valor para la clave de directiva MinConcurrency.
_MaxConcurrency
Valor para la clave de directiva MaxConcurrency.
Comentarios
El método arrojará invalid_scheduler_policy_thread_specification si el valor especificado para la directiva MinConcurrency es mayor que el especificado para la directiva MaxConcurrency.
El método también puede lanzar invalid_scheduler_policy_value para otros valores no válidos.
SetPolicyValue
Establece el valor de la clave de directiva proporcionado como el parámetro key y devuelve el valor anterior.
unsigned int SetPolicyValue(
PolicyElementKey key,
unsigned int value);
Parámetros
key
Clave de directiva para la que se va a establecer un valor.
value
Valor en el que se va a establecer la clave de directiva.
Valor devuelto
Si se admite la clave especificada por el parámetro key, el valor de directiva anterior de la clave se convierte en un atributo unsigned int.
Comentarios
El método lanzará invalid_scheduler_policy_key para una clave de política no válida o cualquier clave de política cuyo valor no se pueda establecer por el método SetPolicyValue.
El método lanzará invalid_scheduler_policy_value si se proporciona un valor que no es compatible para la clave especificada por el parámetro key.
Tenga en cuenta que este método no se admite para establecer las directivas MinConcurrency o MaxConcurrency. Para establecer estos valores, use el método SetConcurrencyLimits.
Consulte también
espacio de nombres de concurrencia
PolicyElementKey
CurrentScheduler (clase)
Scheduler (clase)
Programador de tareas