我从堆空间用尽的java进程中获得了1 GB的堆转储.我已将堆上传到jvisualm,它带有java6发行版.我在16个小时前开始了"计算保留大小"流程并且它仍在运行.在1GB堆上运行前20个对象的计算保留大小需要多长时间?我应该期待它能完成吗?
我有一个带有以下参数的java应用程序,但即使总可用空间大于45%(通过可视VM可以看到),堆也不会被回收.是否有任何理由让JVM无法释放堆空间?相同的设置在Java6中按预期工作.运行Java5运行时和编译时
java -jar -Xmx1024m -XX:MinHeapFreeRatio=15 -XX:MaxHeapFreeRatio=45 -XX:+HeapDumpOnOutOfMemoryError <myjarname>
Run Code Online (Sandbox Code Playgroud)