共用方式為


JOBOBJECT_IO_RATE_CONTROL_INFORMATION結構 (jobapi2.h)

Windows 10 版本 1607 和更新版本:不支援此結構。

包含用來控制作業之 I/O 速率的資訊。 SetIoRateControlInformationJobObjectQueryIoRateControlInformationJobObject 函式會使用此結構。

語法

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

每秒 I/O 作業的 I/O 速率上限 (IOPS)。 如果 指定沒有限制,則設定為 0。

當您同時設定 MaxIopsMaxBandwith時,操作系統會強制執行 I/O 速率達到的第一個限制。

MaxBandwidth

每秒以位元組為單位的 I/O 速率上限。 設定為 0 以指定沒有限制。

當您同時設定 MaxBandwithMaxIops時,操作系統會強制執行 I/O 速率達到的第一個限制。

ReservationIops

設定作業系統為作業保留的最低 I/O 速率。 若要不保留作業,請將此值設定為 0。

如果可能,操作系統可讓作業以這個速率執行 I/O 作業。 如果所有作業的最小速率總和超過操作系統的容量,則操作系統允許每個作業執行 I/O 作業的速率會與作業的保留成正比。

VolumeName

您要套用 I/O 速率原則之磁碟區的 NT 裝置名稱。 如需 NT 裝置名稱的相關資訊,請參閱 NT 裝置名稱

如果此成員 NULL,I/O 速率的原則會套用至作業系統的所有磁碟區。 例如,如果這個成員是 NULL,且 MaxIops 成員是 100,則每個磁碟區的 I/O 速率上限會設定為 100 IOPS,而不是設定所有 100 IOPS 磁碟區 I/O 速率的匯總限制。

BaseIoSize

標準化 I/O 單位的基底大小,以位元組為單位。 例如,如果 BaseIoSize 成員為8,000,則每8,000個字節都會計算為一個I/O單位。 在此範例中,4,000 個字節也是一個 I/O 單位,而 8,001 個字節是兩個 I/O 單位。

您可以使用 StorageBaseIOSizeHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\QoS

登錄機碼。

BaseIoSize 成員的值受限於下列條件約束:

若要在不建立作業的情況下查詢正規化 I/O 單位的基底大小,請呼叫 QueryIoRateControlInformationJobObject,並將 hJob 參數設定為 NULL 與作業無關的進程。

ControlFlags

控制 I/O 速率的原則。 這個成員可以是下列其中一個值。

價值 意義
JOB_OBJECT_IO_RATE_CONTROL_ENABLE
0x1
當此結構傳遞至 SetIoRateControlInformationJobObject 函式時,開啟作業的 I/O 速率控制。 表示當此結構與 QueryIoRateControlInformationJobObject 函式搭配使用時,作業的 I/O 速率控件會開啟。

言論

您只能為巢狀作業階層中的作業設定一個 I/O 速率控制。 您指定的設定會套用至該作業的階層中該作業和子作業。 這些設定不適用於從父作業到階層頂端的作業鏈結。 您仍然可以變更您在設定 I/O 速率控制之階層中原始作業的設定。 不過,嘗試設定階層中任何其他作業的 I/O 速率控制值,包括父作業失敗。

要求

要求 價值
最低支援的用戶端 Windows 10 [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2016 [僅限傳統型應用程式]
標頭 jobapi2.h

另請參閱

QueryIoRateControlInformationJobObject

SetIoRateControlInformationJobObject