当我查看 java 应用程序的内存消耗时,我遇到了一个奇怪的行为:
应用程序在大约 10 分钟内分配 500 MB,然后垃圾收集器释放这 500 MB。然后,500 MB 被一次又一次地分配和释放。
应用程序上没有用户 - 应用程序处于待机状态。
您能否提示我如何检测应用程序分配 500 MB 的原因?
谢谢
最佳答案
您可以使用JVisualVM从您的 JDK 来分析内存使用情况。
您应该打开应用程序并进行内存转储,您将看到不同类分配了多少内存。它可以为您指明正确的方向。
关于java - 了解哪些对象被垃圾收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30755772/