eje*_*jel 8 java optimization profiler profiling
是否有任何Java分析器允许分析短期应用程序?到目前为止,我发现的分析器似乎适用于在用户终止之前一直运行的应用程序.但是,我想要分析像命令行实用程序一样工作的应用程序,它会立即运行和退出.像visualvm或NetBeans Profiler这样的工具甚至无法识别应用程序是否已运行.
我正在寻找类似于Python的cProfile的东西,因为当应用程序退出时会返回探查器结果.
小智 8
您可以使用JVM内置HPROF来分析您的应用程序.
它提供了两种方法:
此方法显示了在堆栈顶部找到方法的频率.
java -agentlib:hprof=cpu=samples,file=profile.txt ...
Run Code Online (Sandbox Code Playgroud)
此方法计算方法的实际调用.仪表代码已由JVM预先注入.
java -agentlib:hprof=cpu=times,file=profile.txt ...
Run Code Online (Sandbox Code Playgroud)
注意:此方法会大大减慢执行时间.
对于这两种方法,java.hprof.txt如果该file=选项不存在,则默认文件名为.
可以使用java -agentlib:hprof=help或可以在Oracles文档中找到完整的帮助
Sun Java 6的java -Xprof交换机可以为您提供一些分析数据.
-Xprof output cpu profiling data
Run Code Online (Sandbox Code Playgroud)