3

我刚刚花了几天时间极大地改进了我们的软件,摆脱了许多不必要的对象分配。改进是巨大的,我现在可以运行一个(几乎)没有分配新对象的进程。在我修复之前创建了数兆字节刚刚丢弃的对象。

现在,我想以某种令人印象深刻的方式可视化改进(这都是关于可衡量的影响:)。有小费吗?我将 VisualVM 用于很多检测,但它并没有真正显示出来。监视器显示了一些称为“GC 活动”的东西,但它并没有那么有用。理想情况下,我希望能够保持修复前后进程中创建的所有对象大小的累积计数。有什么工具可以让我这样做吗?

谢谢!

4

2 回答 2

2

您可以使用GCMV。它支持许多不同的详细 GC 格式,并允许您将比较图表放在一起。我们经常这样做是为了内存泄漏等。我们想要展示“之前和之后”的故事。

它还围绕总 GC、总 GC 时间等内容进行了有趣的总结,在这些情况下看起来非常引人注目。

于 2012-04-06T03:43:23.850 回答
0

使用 VisualVM,您有两种选择。您可以使用内存分析,它跟踪每个类分配的实例数,或者您可以使用对基于每个线程分配的累积 Java 堆字节的跟踪支持,这是在 VisualVM 1.3.3 中添加的。

于 2012-04-24T19:01:42.850 回答