2011-07-07 63 views
0

我需要以编程方式检查系统负载。 我知道没有通用的方法,我们需要作为一个单独的Windows和Ubuntu上的检查如何检查系统内存负载

+0

如果有人指出'Runtime.maxMemory()'和'Runtime.totalMemory()',这里是[义务链接](http://stackoverflow.com/questions/1463868/java-runtime-maxmemory-incorrect )为什么他们可能不正确。 –

+0

@Vineet - 他们只从JVM的角度报告堆内存使用情况,而不是从系统角度报告总内存使用情况;即他们不报告非堆用法,物理页面驻留,寻呼率等。 –

回答

0

鉴于您的目标是追查内存泄漏(显然),最好使用现有的工具来监视内存利用率;例如

  • 包含在JDK中的Java分析工具。
  • 系统特定的工具,例如“top”,“vmstat”,“iostat”等,以及它们的Windows等价物。

试图从Java做到这一点只会混淆问题。

+0

如果你混淆了这个问题,它可能会消失吗? –

+0

@Adriaan科斯特 - 尼斯一个:-) –