答案 0 :(得分:4)
这意味着您的JVM / Java应用程序正在使用堆外内存。很多。
malloc
)。 它可能是某种内存泄漏,但它不是堆对象的内存泄漏。
(理论上它是由于-Xms可能是错误的。如果JVM预先分配了一个巨大的初始堆并且没有使用它,你就不会期望那么多" RES&#34 ;内存。可以想象堆已经变得非常大并且已经缩小了,但是JVM还没有给回操作系统的空间。但AFAIK JVM发布当它缩小堆时,内存回到OS 。)
如果您要了解这一点,您将需要了解您的应用程序及其库依赖项正在做什么。
答案 1 :(得分:0)
您的总内存是结果堆,PermSize和Stack大小。
Max memory = [-Xmx] + [-XX:MaxPermSize] + number_of_threads * [-Xss]
除此JVM之外,还需要一些空间才能平稳运行。说明here in deatil