作为一个程序员,好像这个问题不用回答似的,如果是32位程序,最多能使用2G内存。如果是64位程序,那就多了去了。
我们以32位程序作为说明对象。
有时候,用C++写的一个程序,通过task manager来查看,自己的程序明明只有使用了几百M内存,为什么还会分配内存 失败呢?
如下图所示:

明明这个程序只使用了不到200M内存,但是实际这个程序到底占用了多少内存呢?
请看下图

其实已经占用了600多M内存了,如果是.net编译出来的程序,Managed Heap会有很多。
细节不多说了,自己看着查询资料吧。
探讨了32位程序的内存使用限制,解释了即使显示内存使用量较低,为何仍可能出现内存分配失败的情况。文章深入分析了程序实际占用内存与显示内存之间的差异,对于理解程序内存管理和优化具有重要意义。
2643

被折叠的 条评论
为什么被折叠?



