estructura JOBOBJECT_CPU_RATE_CONTROL_INFORMATION (winnt.h)
Contiene información de control de velocidad de CPU para un objeto de trabajo. Esta estructura la usan las funciones SetInformationJobObject y QueryInformationJobObject con la clase de información JobObjectCpuRateControlInformation .
Sintaxis
typedef struct _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION {
DWORD ControlFlags;
union {
DWORD CpuRate;
DWORD Weight;
struct {
WORD MinRate;
WORD MaxRate;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME;
} JOBOBJECT_CPU_RATE_CONTROL_INFORMATION, *PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION;
Miembros
ControlFlags
Directiva de programación para el control de velocidad de CPU. Este miembro puede ser uno de los siguientes valores.
DUMMYUNIONNAME
DUMMYUNIONNAME.CpuRate
Especifica la parte de los ciclos de procesador que los subprocesos de un objeto de trabajo pueden usar durante cada intervalo de programación, como el número de ciclos por cada 10 000 ciclos. Si el miembro ControlFlags especifica JOB_OBJECT_CPU_RATE_WEIGHT_BASED o JOB_OBJECT_CPU_RATE_CONTROL_MIN_MAX_RATE, este miembro no se usa.
Establezca CpuRate en un porcentaje veces 100. Por ejemplo, para permitir que el trabajo use el 20 % de la CPU, establezca CpuRate en 20 veces 100 o 2000.
No establezca CpuRate en 0. Si CpuRate es 0, SetInformationJobObject devuelve INVALID_ARGS.
DUMMYUNIONNAME.Weight
Si el miembro ControlFlags especifica JOB_OBJECT_CPU_RATE_WEIGHT_BASED, este miembro especifica el peso de programación del objeto de trabajo, que determina el recurso compartido del tiempo de procesador dado al trabajo en relación con otras cargas de trabajo del procesador.
Este miembro puede ser un valor comprendido entre 1 y 9, donde 1 es la acción más pequeña y 9 es la mayor. El valor predeterminado es 5, que se debe usar para la mayoría de las cargas de trabajo.
Si el miembro ControlFlags especifica JOB_OBJECT_CPU_RATE_CONTROL_MIN_MAX_RATE, este miembro no se usa.
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MinRate
Especifica la parte mínima de los ciclos de procesador que los subprocesos de un objeto de trabajo pueden reservar durante cada intervalo de programación. Especifique esta tasa como porcentaje veces 100. Por ejemplo, para establecer una tasa mínima del 50 %, especifique 50 veces 100 o 5000.
Para que las tasas mínimas funcionen correctamente, la suma de las tasas mínimas para todos los objetos de trabajo del sistema no puede superar los 10 000, que es el equivalente del 100 %.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MaxRate
Especifica la parte máxima de los ciclos de procesador que los subprocesos de un objeto de trabajo pueden usar durante cada intervalo de programación. Especifique esta tasa como porcentaje veces 100. Por ejemplo, para establecer una velocidad máxima del 50 %, especifique 50 veces 100 o 5000.
Una vez que el trabajo alcanza este límite para un intervalo de programación, no se puede ejecutar ningún subproceso asociado al trabajo hasta el siguiente intervalo de programación.
Comentarios
Puede establecer el control de velocidad de CPU para varios trabajos en una jerarquía de trabajos anidados. Al establecer el control de velocidad de CPU para un objeto de trabajo, la configuración se aplica al trabajo y a sus trabajos secundarios en la jerarquía. Al establecer el control de velocidad de CPU para un trabajo en una jerarquía anidada, el sistema calcula las cuotas correspondientes con respecto al control de velocidad de CPU del trabajo primario inmediato para el trabajo. En otras palabras, las tasas establecidas para el trabajo representan su parte de la tasa de CPU que se asigna a su trabajo primario. Si un objeto de trabajo no tiene un elemento primario con el control de velocidad de CPU activado en la cadena de sus trabajos primarios, el control de velocidad del trabajo representa la parte de la CPU para todo el sistema.
Los objetos de trabajo que se ejecutan en Servicios de Escritorio remoto (anteriormente Terminal Services) no pueden usar el control de velocidad de CPU si la programación dinámica de recursos compartidos justos (DFSS) está en vigor.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 [solo aplicaciones de escritorio] |
Encabezado | winnt.h |