estrutura JOBOBJECT_IO_RATE_CONTROL_INFORMATION (jobapi2.h)
Windows 10, versão 1607 e mais recente: não há suporte para essa estrutura.
Contém informações usadas para controlar a taxa de E/S de um trabalho. Essa estrutura é usada pelas funções SetIoRateControlInformationJobObject
Sintaxe
typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION {
LONG64 MaxIops;
LONG64 MaxBandwidth;
LONG64 ReservationIops;
PCWSTR VolumeName;
ULONG BaseIoSize;
ULONG ControlFlags;
} JOBOBJECT_IO_RATE_CONTROL_INFORMATION;
Membros
MaxIops
O limite máximo para a taxa de E/S em operações de E/S por segundo (IOPS). Defina como 0 se não for necessário especificar nenhum limite.
Quando você define maxiops e MaxBandwith, o sistema operacional impõe o primeiro limite que a taxa de E/S atinge.
MaxBandwidth
O limite máximo para a taxa de E/S em bytes por segundo. Defina como 0 para não especificar nenhum limite.
Quando você define MaxBandwith e maxiops, o sistema operacional impõe o primeiro limite que a taxa de E/S atinge.
ReservationIops
Define uma taxa mínima de E/S que o sistema operacional reserva para o trabalho. Para não fazer nenhuma reserva para o trabalho, defina esse valor como 0.
O sistema operacional permite que o trabalho execute operações de E/S nesse ritmo, se possível. Se a soma das taxas mínimas para todos os trabalhos exceder a capacidade do sistema operacional, a taxa na qual o sistema operacional permite que cada trabalho execute operações de E/S é proporcional à reserva do trabalho.
VolumeName
O nome do dispositivo NT para o volume ao qual você deseja aplicar a política para a taxa de E/S. Para obter informações sobre nomes de dispositivo NT, consulte NT Device Names.
Se esse membro for NULL, a política para a taxa de E/S se aplicará a todos os volumes do sistema operacional. Por exemplo, se esse membro for
BaseIoSize
O tamanho base da unidade de E/S normalizada, em bytes. Por exemplo, se o membro BaseIoSize for 8.000, cada 8.000 bytes conta como uma unidade de E/S. 4.000 bytes também é uma unidade de E/S neste exemplo, enquanto 8.001 bytes são duas unidades de E/S.
Você pode definir o valor desse tamanho de E/S base usando o StorageBaseIOSize valor do controle HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\\QoS
Chave do registro.O valor do membro BaseIoSize está sujeito às seguintes restrições:
- A função SetIoRateControlInformationJobObject
requer que o BaseIoSize membro da estruturaJOBOBJECT_IO_RATE_CONTROL_INFORMATION que você passa para a função seja 0. - O método
QueryIoRateControlInformationJobObject define o membro BaseIoSize dessa estrutura como 0 se o volume especificado pelo membroVolumeName não der suporte ao controle da taxa de E/S. - O método
QueryIoRateControlInformationJobObject define o membro BaseIoSize dessa estrutura para o tamanho base da unidade de E/S normalizada se o volume que o membroVolumeName especificar oferecer suporte ao controle da taxa de E/S.
ControlFlags
A política de controle da taxa de E/S. Esse membro pode ser um dos seguintes valores.
Observações
Você só pode definir um controle de taxa de E/S para um trabalho em uma hierarquia de trabalhos aninhados. As configurações especificadas se aplicam a esse trabalho e aos trabalhos filho na hierarquia desse trabalho. As configurações não se aplicam à cadeia de trabalhos do trabalho pai até a parte superior da hierarquia. Você ainda pode alterar as configurações do trabalho original na hierarquia na qual você define o controle de taxa de E/S. No entanto, as tentativas de definir valores para o controle da taxa de E/S para quaisquer outros trabalhos na hierarquia, incluindo os trabalhos pai, falham.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 10 [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2016 [somente aplicativos da área de trabalho] |
cabeçalho | jobapi2.h |