【发布时间】:2011-07-29 08:57:05
【问题描述】:
在一个正在运行的系统中,我们看到很多“Full GC (System)”,这表明有人触发了 System.gc()。
有没有办法找出代码中发生这种情况的地方?
我确实搜索了所有可用的来源,但没有发现任何可疑的东西,所以它一定在某个地方,可能是在同一个容器或容器本身中运行的另一个应用程序。
【问题讨论】:
-
简单的解决方案:在调试模式下启动您的应用程序,并在
System.gc()(以及Runtime.gc())处放置一个方法断点。 -
@Aaron,您有超过 50 个问题没有得到接受的答案。也许您可以跟进答案,以便他们可以接受。
-
我明白你的意思。我的一些问题可能对 SO 来说太复杂了;现有答案不令人满意(如stackoverflow.com/questions/6136769/… 或stackoverflow.com/questions/6135570/cyclic-buffer-with-readers)。
标签: java logging garbage-collection stack-trace