【问题标题】:Statistics of young and tenured generation memory in javajava中年轻代和老代内存统计
【发布时间】:2013-04-08 16:08:44
【问题描述】:

Java 中有什么方法可以让我们访问当前的内存状态,比如 JVM 当前使用了多少tenured memory 或young generation memory .

执行 Runtime.getRuntime().freeMemory(), totalMemory() 很有用,但我想知道是否有任何方法可以拆分总内存。

【问题讨论】:

标签: java memory memory-management garbage-collection


【解决方案1】:

试试-XX:-PrintGC-XX:-PrintGCDetails; 这些的详细信息可以在以下链接中找到 http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

此链接包含与统计信息相关的更多信息 http://docs.oracle.com/javase/1.5.0/docs/tooldocs/share/jstat.html

【讨论】:

【解决方案2】:

GC 日志记录是监控 Young 和 OldGen 占用的最佳方式。

而且,jstat 是另一种监控堆大小的好方法,除了 GC 日志会向您显示什么之外,jstat 还会向您显示 EdenSurvivor 空间职业,试试:

 jstat -gcutil -t <pid> <interval> <number_of_samples>

【讨论】:

    【解决方案3】:

    来自 Manage Engine 的应用程序管理器完成这项工作。很棒的工具 http://www.manageengine.com/products/applications_manager/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-06
      • 2020-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 1970-01-01
      相关资源
      最近更新 更多