Поделиться через


структура JOBOBJECT_IO_RATE_CONTROL_INFORMATION (jobapi2.h)

Содержит сведения, используемые для управления скоростью ввода-вывода для задания. Эта структура используется функциями SetIoRateControlInformationJobObject и QueryIoRateControlInformationJobObject .

Синтаксис

typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION {
  LONG64 MaxIops;
  LONG64 MaxBandwidth;
  LONG64 ReservationIops;
  PCWSTR VolumeName;
  ULONG  BaseIoSize;
  ULONG  ControlFlags;
} JOBOBJECT_IO_RATE_CONTROL_INFORMATION;

Члены

MaxIops

Максимальное ограничение скорости ввода-вывода в операциях ввода-вывода в секунду. Установите значение 0, если не указано ограничение.

При установке maxIops и MaxBandwith операционная система применяет первое ограничение скорости ввода-вывода.

MaxBandwidth

Максимальное ограничение скорости ввода-вывода в байтах в секунду. Задайте значение 0, чтобы не указывать ограничение.

При установке maxBandwith и MaxIops операционная система применяет первое ограничение скорости ввода-вывода.

ReservationIops

Задает минимальную частоту ввода-вывода, которую операционная система резервирует для задания. Чтобы не резервировать задание, задайте для этого значения значение 0.

Операционная система позволяет заданию выполнять операции ввода-вывода с такой скоростью, если это возможно. Если сумма минимальных ставок для всех заданий превышает емкость операционной системы, скорость, с которой операционная система разрешает каждому заданию выполнять операции ввода-вывода, пропорциональна резервированию для задания.

VolumeName

Имя устройства NT для тома, к которому требуется применить политику для скорости ввода-вывода. Сведения об именах устройств NT см. в разделе Имена устройств NT.

Если этот член имеет значение NULL, политика скорости ввода-вывода применяется ко всем томам операционной системы. Например, если этот элемент имеет значение NULL , а член MaxIops равен 100, максимальный предел скорости ввода-вывода для каждого тома устанавливается в 100 операций ввода-вывода вместо того, чтобы устанавливать совокупный предел скорости ввода-вывода для всех томов в 100 операций ввода-вывода.

BaseIoSize

Базовый размер нормализованной единицы ввода-вывода в байтах. Например, если элемент BaseIoSize равен 8000, каждые 8000 байт считаются одной единицей ввода-вывода. 4000 байт также является одной единицей ввода-вывода в этом примере, а 8001 байт — двумя единицами ввода-вывода.

Значение этого базового размера ввода-вывода можно задать с помощью значения StorageBaseIOSizeHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\QoS

раздел реестра.

Значение элемента BaseIoSize зависит от следующих ограничений:

  • Функция SetIoRateControlInformationJobObject требует, чтобы элемент BaseIoSizeструктуры JOBOBJECT_IO_RATE_CONTROL_INFORMATION , передаваемой в функцию, был равен 0.
  • Метод QueryIoRateControlInformationJobObject устанавливает для элемента BaseIoSize этой структуры значение 0, если том, указанный элементом VolumeName , не поддерживает управление скоростью ввода-вывода.
  • Метод QueryIoRateControlInformationJobObject задает для элемента BaseIoSize этой структуры базовый размер нормализованной единицы ввода-вывода, если том, указанный элементом VolumeName , поддерживает управление скоростью ввода-вывода.
Чтобы запросить базовый размер нормализованной единицы ввода-вывода без создания задания, вызовите QueryIoRateControlInformationJobObject с параметром hJob , имеющим значение NULL , из процесса, не связанного с заданием.

ControlFlags

Политика для управления скоростью ввода-вывода. Этот элемент может быть одним из следующих значений.

Значение Значение
JOB_OBJECT_IO_RATE_CONTROL_ENABLE
0x1
Включает управление скоростью ввода-вывода для задания при передаче этой структуры в функцию SetIoRateControlInformationJobObject . Указывает, что управление скоростью ввода-вывода для задания включено при использовании этой структуры с функцией QueryIoRateControlInformationJobObject .

Комментарии

Важно Начиная с Windows 10 версии 1607 эта структура больше не поддерживается.
 
Можно задать только один элемент управления скоростью ввода-вывода для задания в иерархии вложенных заданий. Указанные параметры применяются к заданию и дочерним заданиям в иерархии для этого задания. Параметры не применяются к цепочке заданий от родительского задания до верхней части иерархии. Вы по-прежнему можете изменить параметры для исходного задания в иерархии, для которой задан элемент управления скоростью ввода-вывода. Однако попытки задать значения для управления скоростью ввода-вывода для любых других заданий в иерархии, включая родительские задания, завершаются сбоем.

Требования

   
Минимальная версия клиента Windows 10 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Верхняя часть jobapi2.h

См. также раздел

QueryIoRateControlInformationJobObject

SetIoRateControlInformationJobObject