【发布时间】:2017-10-30 04:16:20
【问题描述】:
我一直在分析我的 java 应用程序,并且对我的应用程序报告的内存使用情况感到困惑(通过 eclipse 运行)。它与分析器报告的内存使用情况总是有很大不同,甚至与自身都不匹配。
应用程序的 JVM 标志是:
-Xmx1G
-Xms1G
-XX:MaxMetaspaceSize=256M
-XX:CompressedClassSpaceSize=256M
此图显示进程“java”的报告内存为 1.67GB。当我双击该进程时,细分显示 1.15GB 的“实际内存大小”和各种其他内存指标。
飞行记录器显示应用程序遵守其 1GB 堆大小。我进行的测试表明它也遵守其元空间限制。
我的问题有两个: 1)知道为什么报告的内存使用情况在进程(由Mac OS X报告)和分析器之间如此不同吗? 2) 知道为什么 Activity Monitor 中显示的内存与进程内存故障之间存在差异吗?
【问题讨论】:
标签: java macos memory memory-management memory-leaks