DISK_CACHE_INFORMATION結構 (winioctl.h)
提供磁碟快取的相關信息。此結構是由 IOCTL_DISK_GET_CACHE_INFORMATION 和 IOCTL_DISK_SET_CACHE_INFORMATION 控件程式代碼使用。
語法
typedef struct _DISK_CACHE_INFORMATION {
BOOLEAN ParametersSavable;
BOOLEAN ReadCacheEnabled;
BOOLEAN WriteCacheEnabled;
DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
WORD DisablePrefetchTransferLength;
BOOLEAN PrefetchScalar;
union {
struct {
WORD Minimum;
WORD Maximum;
WORD MaximumBlocks;
} ScalarPrefetch;
struct {
WORD Minimum;
WORD Maximum;
} BlockPrefetch;
} DUMMYUNIONNAME;
} DISK_CACHE_INFORMATION, *PDISK_CACHE_INFORMATION;
成員
ParametersSavable
指出裝置是否能夠在非揮發性記憶體中儲存任何參數。
ReadCacheEnabled
指出是否啟用讀取快取。
WriteCacheEnabled
指出是否啟用寫入快取。
ReadRetentionPriority
判斷從快取中剩餘的讀取作業快取數據的可能性。 此數據可能具有不同於在其他情況下快取的數據優先順序,例如從預先擷取作業。
這個成員可以是 下列 DISK_CACHE_RETENTION_PRIORITY列舉類型的其中一個值。
值 | 意義 |
---|---|
|
快取中不會保留任何數據。 |
|
喜好設定是提供給預先擷取的數據。 |
|
喜好設定是提供給從讀取作業快取的數據。 |
WriteRetentionPriority
判斷從快取中剩餘寫入作業快取的數據可能性。 此數據可能具有不同於在其他情況下快取的數據優先順序,例如從預先擷取作業。
DisablePrefetchTransferLength
停用預先擷取。 每當要求的區塊數目超過 DisablePrefetchTransferLength 中的值時,可能會停用預先擷取。 當為零時,不論區塊要求的大小為何,都停用預先擷取。
PrefetchScalar
如果這個成員為 TRUE,則聯集是 ScalarPrefetch 結構。 否則,聯集是 BlockPrefetch 結構。
DUMMYUNIONNAME
DUMMYUNIONNAME.ScalarPrefetch
DUMMYUNIONNAME.ScalarPrefetch.Minimum
要求傳輸長度的純量乘數。 只有當 PrefetchScalar 為 TRUE 時,此成員才有效。 當 PrefetchScalar 為 TRUE 時,此值會乘以傳輸長度,以取得可預先擷取到磁碟作業上快取的數據量下限。
DUMMYUNIONNAME.ScalarPrefetch.Maximum
要求傳輸長度的純量乘數。 只有當 PrefetchScalar 為 TRUE 時,此成員才有效。 當 PrefetchScalar 為 TRUE 時,此值會乘以傳輸長度,以取得可預先擷取到磁碟作業上快取的最大數據量。
DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks
可以預先擷取的區塊數目上限。
DUMMYUNIONNAME.BlockPrefetch
DUMMYUNIONNAME.BlockPrefetch.Minimum
可預先擷取到磁碟作業上快取的數據量下限,做為磁碟區塊的絕對數目。 只有當 PrefetchScalar 為 FALSE 時,此成員才有效。
DUMMYUNIONNAME.BlockPrefetch.Maximum
可以預先擷取到磁碟作業上快取的數據量上限,做為磁碟區塊的絕對數目。 只有當 PrefetchScalar 為 FALSE 時,此成員才有效。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
標頭 | winioctl.h (包含 Windows.h) |