26 сент. 2010 г.

SetSystemFileCacheSize


Поддерживается на Windows Vista / XP64
Функция SetSystemFileCacheSize ограничивает размер файла системного кэша.
BOOL SetSystemFileCacheSize(
  SIZE_T MinimumFileCacheSize, // минимальный размер кэша
  SIZE_T MaximumFileCacheSize, // максимальный размер кэша
  DWORD Flags  // флаги
);
Параметры:

MinimumFileCacheSize Минимальный размер файла кэша, в байтах. Менеджер виртуальной памяти пытается сохрнить столько памяти резидентной в системном файле кэша.
Для сброса кэша, задайте (SIZE_T) -1.
MaximumFileCacheSize Максимальный размер файла кэша, в байтах. Менеджер виртуальной памяти превышает это ограничение только, если этот вызов или предыдущий вызов функции SetSystemFileCacheSize определяет MM_WORKING_SET_MAX_HARD_ENABLE.
Для сброса кэша, задайте (SIZE_T) -1.
Flags Включает или отключает ограничения файла кэша. Если этот параметр 0 (ноль), ограничения размера принимают текущие значения.
Этот флаг принимает комбинацию из следующих значений:
MM_WORKING_SET_MAX_HARD_DISABLE
- отключение ограничения по максимальному размеру. Флаги MM_WORKING_SET_MAX_HARD_DISABLE и MM_WORKING_SET_MAX_HARD_ENABLE взаимно недопустимы. MM_WORKING_SET_MAX_HARD_ENABLE
- включает ограничения по максимальному размеру. Флаги MM_WORKING_SET_MAX_HARD_DISABLE и MM_WORKING_SET_MAX_HARD_ENABLE взаимно недопустимы. MM_WORKING_SET_MIN_HARD_DISABLE
- отключение ограничения по минимальному размеру. Флаги MM_WORKING_SET_MIN_HARD_DISABLE и MM_WORKING_SET_MIN_HARD_ENABLE взаимно недопустимы. MM_WORKING_SET_MIN_HARD_ENABLE
- включение ограничения по минимальному размеру. Флаги MM_WORKING_SET_MIN_HARD_DISABLE и MM_WORKING_SET_MIN_HARD_ENABLE взаимно недопустимы.
Возвращаемые значения:
При успешном завершении функции, возвращается ненулевое значение.
При ошибке, возвращается ноль. Для получения дополнительной информации об ошибке, вызовите GetLastError.
Замечания:
Вызывающий процесс должен иметь привилегию SE_INCREASE_QUOTA_NAME.
Установка параметра MaximumFileCacheSizeв очень маленькое значение, может плохо сказаться на производительности системы.
Для компиляции приложения, которое содержит эту функцию, объявите WIN32_WINNT со значением 0x0502 или больше.