Compartilhar via


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 e QueryIoRateControlInformationJobObject.

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 NULL e o membro maxiops for 100, o limite máximo para a taxa de E/S para cada volume será definido como 100 IOPS, em vez de definir um limite agregado para a taxa de E/S em todos os volumes de 100 IOPS.

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 estrutura JOBOBJECT_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 membro VolumeName 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 membro VolumeName especificar oferecer suporte ao controle da taxa de E/S.
Para consultar o tamanho base da unidade de E/S normalizada sem criar um trabalho, chame QueryIoRateControlInformationJobObject com o parâmetro hJob definido como NULL de um processo que não está associado a um trabalho.

ControlFlags

A política de controle da taxa de E/S. Esse membro pode ser um dos seguintes valores.

Valor Significado
JOB_OBJECT_IO_RATE_CONTROL_ENABLE
0x1
Ativa o controle da taxa de E/S do trabalho quando essa estrutura é passada para a função SetIoRateControlInformationJobObject . Indica que o controle da taxa de E/S do trabalho é ativado quando essa estrutura é usada com a função QueryIoRateControlInformationJobObject.

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

Consulte também

QueryIoRateControlInformationJobObject

SetIoRateControlInformationJobObject