关于VS编译的程序内存分配只能用1.5~2G上限的优化方案

2023-05-16

关于VS编译的程序 内存分配只能用1.5~2G上限的优化方案

遇到的问题是这样的:
电脑内存32G,VS2012编译的一个程序,在程序运行过程中,一旦程序的内存使用达到1.5G,就会抛出内存溢出(outofmomery)异常,然后程序就卡主了!已确定程序逻辑没有bug。就是因为要处理的数据量太大,单纯的消耗内存。可是也就才1.5G吖,还远远不到系统的32G。
然后去知乎求大神解答,终于找到解决方案,在这里备忘一下:
程序只能用1.5~2G内存,这是32位(x86)模式下程序所能请求内存的上限,如果想要使用更多的内存,更改一下项目CPU启动的模式就好了,改成x64就OK。不过要注意程序内是否使用了只能在32位下运行的模块。比如虽然程序是x64的,但是里面用到了一个x32的模块(dll),如果在x64的模式下运行就还会抛出内存溢出异常的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于VS编译的程序内存分配只能用1.5~2G上限的优化方案 的相关文章

随机推荐