基本原理为通过修改系统注册表项来修改虚拟内存
决定虚拟内存的注册表项为:
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management\\PagingFiles
以下为通过该方法查看和修改虚拟内存的代码(Qt环境下)
//获取注册表项,查看虚拟内存设置
const QString path = "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management";
const QString key = "PagingFiles";
QSettings settings(path, QSettings::NativeFormat);
QString val = settings.value(key).toString();
QDebug() << val;
//设置注册表项
const QString value = "C:\\pagefile.sys 12288 12288"; //12GB,以MB为单位
QSettings settings(path, QSettings::NativeFormat);
settings.setValue(key, value);
注意,修改虚拟内存后需重启系统后方能生效