SetSystemFileCacheSize 関数 (memoryapi.h)
ファイル システム キャッシュのワーキング セットのサイズを制限します。
構文
BOOL SetSystemFileCacheSize(
[in] SIZE_T MinimumFileCacheSize,
[in] SIZE_T MaximumFileCacheSize,
[in] DWORD Flags
);
パラメーター
[in] MinimumFileCacheSize
ファイル キャッシュの最小サイズ (バイト単位)。 仮想メモリ マネージャーは、システム ファイル キャッシュに少なくともこの多くのメモリを保持しようとします。
キャッシュをフラッシュするには、 を指定します (SIZE_T) -1
。
[in] MaximumFileCacheSize
ファイル キャッシュの最大サイズ (バイト単位)。 仮想メモリ マネージャーでは、この呼び出しまたは SetSystemFileCacheSize の以前の呼び出しで FILE_CACHE_MAX_HARD_ENABLEが指定されている場合にのみ、この制限が適用されます。
キャッシュをフラッシュするには、 を指定します (SIZE_T) -1
。
[in] Flags
ファイル キャッシュの制限を有効または無効にするフラグ。 このパラメーターが 0 (ゼロ) の場合、サイズ制限は現在の設定 (無効または有効) を保持します。
戻り値
関数が成功した場合、戻り値は 0 以外の値になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
呼び出し元プロセスで 、SE_INCREASE_QUOTA_NAME 特権を有効にする必要があります。
MaximumFileCacheSize パラメーターを非常に小さい値に設定すると、システムのパフォーマンスに悪影響を与える可能性があります。
この関数を使用するアプリケーションをコンパイルするには、 _WIN32_WINNT を 0x0502 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。
FILE_CACHE_* 定数は、Windows SDK for Windows Server 2008 以降の Windows ヘッダー ファイルで定義されます。 以前のバージョンの SDK のヘッダー ファイルを使用している場合は、次の定義をコードに追加します。
#ifndef FILE_CACHE_FLAGS_DEFINED
#define FILE_CACHE_MAX_HARD_ENABLE 0x00000001
#define FILE_CACHE_MAX_HARD_DISABLE 0x00000002
#define FILE_CACHE_MIN_HARD_ENABLE 0x00000004
#define FILE_CACHE_MIN_HARD_DISABLE 0x00000008
#endif // FILE_CACHE_FLAGS_DEFINED
要件
サポートされている最小のクライアント | Windows Vista、Windows XP Professional x64 Edition [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008、Windows Server 2003 SP1 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | memoryapi.h (Windows.h、Memoryapi.h を含む) |
Library | onecore.lib |
[DLL] | Kernel32.dll |