我的一个主要应用程序在运行时崩溃了。
我想找出是否与系统的内存分配问题有关。因此,我创建了一个小型测试程序来分配1GB的内存,并同时运行了15个这样的进程,总共使用了15GB的RAM。
然而,当我运行这个程序时,任务管理器显示它只占用了2GB的RAM?这怎么可能呢?
我编写了如下示例代码:
char *ptr[1024];
for ( i = 0 ; i < 1024 ; ++i )
{
ptr[i] = new char[1024 * 1024];
std::cout << " Allocated 1024 MB" << i << " th time " << std::endl;
}