【发布时间】:2012-10-09 07:12:37
【问题描述】:
我正在通过我的 java 程序运行负载,并通过 jconsole 和 top 命令分析内存消耗。
我正在使用的“uname -a”机器是:
SunOS 5.10 Generic_142909-17 sun4v sparc sun4v
我的问题是,如果我通过 top 命令看到内存消耗,那么当负载运行时 RES 内存会增加,这很好,但当我停止负载时它不会下降。
如果发生 GC,那么 RES mem 也不会下降。与 Jconsole 中的相反,我可以看到发生 GC 时 mem 消耗下降。
最高输出:
PID 用户名 LWP PRI NICE SIZE RES 状态时间 CPU 命令
16959 aconyx 836 59 0 7559M 3696M 睡眠 61:27 0.04% java
JConsole 输出:
在同一时间点,jconsole 显示已使用 384 MB,顶部 RES 显示已使用 3696 MB。
关于为什么顶部 RES 内存没有像 jconsole 中可见的那样下降的任何指针。
提前致谢。
【问题讨论】:
标签: java jakarta-ee memory memory-management solaris