<分区>
在任何情况下,Java 应用程序(例如 Tomcat servlet 应用程序)中的泄漏是否有可能超出分配的内存并使用额外的系统内存,或者为 JVM 分配的堆是否真正受到防火墙保护(可以这么说)来自(其余的)操作系统/内核内存?我在使用 Java 6 和 7 的 2.6 Kernel Linux 中工作,但这是一个更普遍的问题。
<分区>
在任何情况下,Java 应用程序(例如 Tomcat servlet 应用程序)中的泄漏是否有可能超出分配的内存并使用额外的系统内存,或者为 JVM 分配的堆是否真正受到防火墙保护(可以这么说)来自(其余的)操作系统/内核内存?我在使用 Java 6 和 7 的 2.6 Kernel Linux 中工作,但这是一个更普遍的问题。
最佳答案
是的——这是可能的。 Java 内存区域分为几个区域 - heap 和 permgen 不是全部。还有用于代码缓存和 native 内存的区域,这在所有堆结构中都非常流行。请查看 this presentation 的幻灯片 7
关于java - Java内存泄漏是否有可能使用比堆+ permgen更多的内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22871321/