![]() |
1
5
在大多数现代操作系统中,内存是为使用的每个页面分配的,而不是为“保留”的每个页面分配的。您的代码不使用任何页面,因此没有真正分配内存。
尝试清除分配的内存
我试图找到一个引证,但我没有成功。感谢您的帮助! |
![]() |
2
4
你说运行应用程序的机器有16GB的内存,所以我假设它是64位的。这意味着您的应用程序将在耗尽1/物理内存和2/虚拟内存之前运行很长时间。 在32位Windows上,应用程序将以4GB停止。在64位Windows上,您的应用程序将停止在16TB(假设您有一个可以自动增长的页面文件和这么多硬盘空间)。 http://support.microsoft.com/kb/294418
编辑 : ruslik 指出在实际操作中,进程将无法在32位窗口上分配高达2GB或3GB的内存(取决于二进制文件的编译方式)。从上面链接的KB文章中,您的进程占用的最大内存是3GB或4GB,1GB属于不能使用的OS。 |
![]() |
3
1
如果你在一个特定的平台/操作系统上,你应该使用报表函数,具体到那个操作系统。 如果你是ERTIONG跨平台程序,你不应该依赖任何空闲内存检查算法。原因是:
|
![]() |
Community wiki · C中有哪些耗时的操作? 1 年前 |
![]() |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
![]() |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
![]() |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |