c++ - Visual Studio 2015 : increase process memory

标签 c++ memory visual-studio-2015 resources

当我在 Visual Studio 2015 中运行我的应用程序时,我在诊断工具中看到进程内存固定为 2GB - 好像有一个限制:

Diagnostic

我读到,x32 的执行限制了可用内存,因此有必要使用 x64。所以我构建了 relase, x64 ,它给出了上面显示的结果。我怎样才能取消这个“限制”?

注意:我有 16GB Ram 硬件(操作系统:Windows 10)。

最佳答案

没有这样的限制,这可能是您的代码(或您使用的某些库)恰好使用了 2gb 的 ram。

如果您尝试在 x86 应用程序中分配超过 2GB 的内存 - 您将得到 std::bad_alloc 异常,因为操作系统无法提供更多内存,尽管您还有 14GB 的空闲内存。

在 MSVC2015 中编译为 x64 的非常简单的程序,如下所示:

for (int i = 0; i < 4000000; ++i) {
    char* ch = new char[1024];
}

占用 4gb 内存,默认配置没有限制。

关于c++ - Visual Studio 2015 : increase process memory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42186485/

相关文章:

c++ - 如何从 .t​​xt 文件中读取以确定二维数组的大小?

javascript - 是否可以从 C#(或 C++)获取 HTML 元素(如 iFrame、div 等)的窗口句柄?

c# - 我的内存在哪里?重新初始化数据表

jenkins - 从命令行构建时出现 MSBuild 警告 MSB3884

node.js - NPM 更新后 Aurelia Fetch 使用中断

c++ - 映射和数组

c++ - 在文本框中显示

java - 在 Java 字符(16 位)中存储 UTF-8 字符(8 位)时如何避免内存浪费。二合一?

c - 在 C 中分配内存困惑

c# - 编译 Xamarin 应用程序。加载程序集时出现异常。找不到文件异常