【发布时间】:2010-09-01 19:26:40
【问题描述】:
假设我正在执行垃圾收集未并行运行的 jvm。那是当 GC 执行时,我的主线程停止了。
有没有一种方法可以指定在调用 GC 的当前时刻正在运行什么方法?我知道我可以获得有关时间的信息,但这还不够。 我认为这样的分析信息对于 JVM 来说很容易提供,因为它只是返回一个暂停线程的每个堆栈的最顶层元素(堆栈帧)的问题。
谢谢。
【问题讨论】:
-
您对哪种集合(eden、survivor scavenge、tenured、full GC)感兴趣?在现代 Sun JVM 的默认配置下,eden 可以非常频繁地被收集(如果正在创建许多对象,则很容易每秒几次),但在某些程序的整个生命周期中可能不会有一次完整的 GC。
标签: java garbage-collection profiling