我在具有12 GB RAM的Windows OS上运行大量内存密集型作业。通过我的计算,4GB的内存应该足以运行该程序。我正在使用CodeBlocks运行我用动态内存分配(我有C和C++中的程序的两个版本,分别为malloc/free和new/delete)编写的程序。由C/C++程序使用的增加(非堆栈)内存
当我拉起任务管理器时,我发现程序似乎只使用大约2GB的Ram,即使我有更多的可用空间,并且页面文件大小目前设置为30gb。有没有什么办法可以让ciode块使用更多的内存?我还使用了DEV-C++,并在C++代码中得到了相同的bad_alloc错误。
任何想法?提前致谢。 哦,我正在使用一个64位的Windows操作系统7.
我假设你使用的是32位版本的Windows,在这种情况下答案是否定的。如果您使用的是64位版本的Windows,则可以构建一个可以访问所有系统内存的64位二进制文件。 –
我正在使用一个64位的Windows操作系统7. – user1775614
听起来像你正在编译一个32位目标。你正在使用哪个编译器? –