1
我想剖析JMH測試並查看VisualVM中的調用樹。但是,當我使用StackProfiler時,它給了我這樣的本地方法,這在我的情況下完全沒用。如何在JMH中查看調用樹分析?
....[Thread state distributions]....................................................................
59,9% TIMED_WAITING
23,0% WAITING
17,0% RUNNABLE
....[Thread state: TIMED_WAITING]...................................................................
47,3% 78,9% sun.misc.Unsafe.park
8,3% 13,8% java.lang.Thread.sleep
4,4% 7,3% java.lang.Object.wait
....[Thread state: WAITING].........................................................................
21,9% 95,1% sun.misc.Unsafe.park
1,1% 4,9% java.lang.Object.wait
....[Thread state: RUNNABLE]........................................................................
13,5% 79,0% sun.nio.ch.EPollArrayWrapper.epollWait
2,0% 11,5% java.net.SocketInputStream.socketRead0
1,0% 5,7% java.net.PlainSocketImpl.socketAccept
看起來你是對的。在我的情況下工作這樣的選項創建像「新OptionsBuilder()。addProfiler(」stack「,」lines = 5; top = 3; detailLine = true; excludePackages = true; period = 1「)...」,但複雜長時間運行的方法更容易編寫一個小的類並使用VisualVM。 –