下图是否表明我正在使用内存并且它没有被垃圾回收?
一旦我开始使用较少的堆,我预计橙色图(分配的堆)会下降。
- 这是一个无效的假设吗?
- 一旦分配,堆不会 缩小直到程序关闭?
最佳答案
从图中可以清楚地看出,您的 JVM 能够缩小堆。从下午 3:10 之前略微下降的橙色线可以看出这一点。
然而,后来 JVM 选择不收缩堆。这几乎可以肯定是因为未使用的堆的比例不够大。该行为由 -XX:MinHeapFreeRatio
和 -XX:MaxHeapFreeRatio
控制。
有关讨论,请参阅 http://stopcoding.wordpress.com/2010/04/12/more-on-the-incredible-shrinking-jvm-heap/
关于java - 这是否表明 Java 中存在内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14696718/