问题的简短说明: 操作系统(Windows 7 x64)无法创建JVM,而另一个C ++程序已经碎片化内存。
问题详情: 我有一个8或16 GB RAM的工作站。当我启动我的JVM程序(需要高达2 GB的RAM)时,它工作正常。它工作正常,因为JVM可以分配大量连续的内存。但是,如果我尝试启动C ++程序(我可以说程序经常使用新的和删除操作),尽管有大量的可用内存,JVM也无法启动。 显而易见的解决方案是首先启动JVM程序。如果JVM程序崩溃,问题将开始。在这种情况下,我必须启动JVM程序(虽然操作系统有一个很大的连续内存)或重新启动C ++程序。
问题: 我可以以某种方式为JVM准确地保留操作系统的内存(尽管有潜在的崩溃)吗?我可以在操作系统运行时保留内存吗?