我试图解释通过指定-Xprof
标志产生的分析输出。
对于我的应用程序,我得到这样的分析输出:
Flat profile of 8.34 secs (775 total ticks): main
Interpreted + native Method
10.4% 66 + 12 java.lang.ClassLoader.defineClass1
3.6% 27 + 0 java.nio.HeapCharBuffer.<init>
2.5% 1 + 18 java.io.UnixFileSystem.getBooleanAttributes0
...
74.4% 380 + 179 Total interpreted (including elided)
Compiled + native Method
0.3% 0 + 2 java.util.jar.JarFile$1.hasMoreElements
0.3% 0 + 2 org.reflections.vfs.ZipDir$1$1.computeNext
0.1% 0 + 1 java.lang.Object.<init>
...
1.7% 3 + 10 Total compiled
Stub + native Method
7.5% 0 + 56 java.util.zip.ZipFile.getEntry
4.7% 0 + 35 java.lang.Object.getClass
3.2% 0 + 24 java.lang.System.arraycopy
...
23.2% 0 + 174 Total stub
Thread-local ticks:
3.1% 24 Blocked (of total)
0.7% 5 Class loader
对于每个帖子。我的问题是Interpreted
,Compiled
和Stub
方法之间的区别是什么,Thread-local ticks
是什么,+ native
列的含义是什么?是否有-Xprof
分析器的规范文档?谷歌搜索Xprof
收效甚微。
答案 0 :(得分:11)
我曾经找到过像XProf这样的工具信息的唯一地方是一些(稍微陈旧的)基于纸质的Java书籍。