根据我能找到的文档和我能找到的 StackOverflow 问题,我的理解是默认最大永久代大小是 64MB。
我正在 Eclipse Kepler x86、Windows 7 x64、Java 7 上运行应用程序,但未设置 -XX:MaxPermSize
标志。在发生 Permgen OutOfMemory 错误之前,应用程序的最大容量约为 82 MB。我不明白这个大约 82 MB 的数字是从哪里来的。如果您能引用有关如何导出此默认最大永久代大小的最新技术文档,我们将不胜感激。
注意:这不是如何调试/修复 PermGen OutOfMemoryErrors 的问题。
最佳答案
您正在运行 64 位环境,其 Permgen 默认值比 32 位 jre 的默认值更大。您获得的 permgen 增加了 30%,约为 83 Megs,这又与您的值相符。
这也记录在 Oracle 的 VM 参数页面中。
关于java - 默认最大 Permgen 大小是如何定义的 :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28680266/