VisualVM CPU分析是否适用于Mac?

时间:2010-11-04 19:56:13

标签: java profiling visualvm jvisualvm

我正在尝试使用VisualVM在具有64位VM的Mac上进行配置,但是没有成功。

它似乎只在很长的时间间隔内更新(我认为它根本不会分析,直到我离开键盘十分钟,然后回来发现一次更新。我相信应该每2秒运行一次)

大多数情况下,它只是位于“尚未提供分析信息”消息。有一次它工作,它发现了4个方法调用,总计。在那个时间框架内会发生数百万次。

应用程序退出时的快照显示了一些系统线程,但没有显示我的代码。

我没有更改默认设置中的任何设置。我已经检查过它并没有排除我的代码。

VisualVM是否可以在Mac上运行以分析64位JVM?

我已经尝试过来自最新JDK的jvisualvm和来自java.net的稍后版本。

java版“1.6.0_22” Java(TM)SE运行时环境(版本1.6.0_22-b04-307-10M3261) Java HotSpot(TM)64位服务器VM(版本17.1-b03-307,混合模式)

系统版本:Mac OS X 10.6.4(10F569)

有什么想法?它对你有用吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

某种导航错误。

我正在测试一个测试应用程序,它创建了一个线程,并在线程的run方法中循环。它使用了cpu,sleep()和println()。

但问题是它在一种方法中都是ALL。 VisualVM似乎只在您退出时跟踪方法。因此,由于我有一个方法循环,​​它从未退出该方法,并且从未生成跟踪事件。

我将run()方法中的代码移动到另一个从run()重复调用的方法中,现在它可以正常工作。