4

到目前为止,我已经尝试过VisualVMJVM Monitor ,但都没有像我需要的那样表现。我的程序的简短摘要:我需要跨 5 个以上线程以亚秒级精度测量快速应用程序。当我可以选择“开始分析”时,我的应用程序已经结束。作为一种解决方法,我把System.in.read()我的应用程序放在最后,但这意味着从读取开始的所有内容都是垃圾信息,并且会扭曲一些测量值。

JVM Monitor 尤其应该在每个应用程序启动时自动开始分析,嵌入到 Eclipse 中。

4

2 回答 2

2

来自手册:http ://www.jvmmonitor.org/doc/#How_to_monitor_app_that_runs_for_short_time

如何监控仅运行很短时间的应用程序?

要监控运行时间太短以至于无法连接 JVM Monitor 的应用程序,

在感兴趣的点设置断点,并以调试模式运行您的应用程序。
在断点处停止时将 JVM Monitor 连接到应用程序。
使用 JVM Monitor 收集分析数据。

注意:如果您的应用程序是从 Eclipse 外部启动的,您可以指定以下选项让您的应用程序暂停,直到附加调试器。

-agentlib:jdwp=transport=dt_socket,address=<port number>,server=y,suspend=y
于 2013-10-09T21:14:09.237 回答
2

VisualVM 1.3.6有一个新插件Startup Profiler。它允许您从一开始就分析您的应用程序。

于 2013-10-14T08:45:57.967 回答