gpt4 book ai didi

java - VisualVM CPU 分析是否适用于 Mac?

转载 作者:搜寻专家 更新时间:2023-11-01 03:29:37 27 4
gpt4 key购买 nike

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

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

大多数时候,它只是伴随着“尚无可用的分析信息”消息。有一次它成功了,它总共发现了 4 个方法调用。在那个时间范围内会发生数百万。

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

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

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

我已经尝试了最新 JDK 中的 jvisualvm 和 java.net 中稍晚的版本。

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

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

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

谢谢!

最佳答案

某种程度上的飞行员失误。

我正在对一个测试应用程序进行基准测试,它创建了一个线程,并在线程的运行方法中循环运行。它做了一个紧密的循环来使用 cpu、sleep() 和 println()。

但问题是它是一种方法。看起来 VisualVM 只在您退出时跟踪方法。因此,由于我有一个方法循环,​​它永远不会退出该方法,也不会生成跟踪事件。

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

关于java - VisualVM CPU 分析是否适用于 Mac?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4100728/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com