java hprof_java 性能之 hprof

JVM可以对java程序的cpu和heap进行 profiling。hprof 实际上是JVM中的一个native的库,它会在JVM启动的时候通过命令行参数来动态加载,并成为 JVM进程的一部分。

主要有两种使用方式:

1. java -agentlib:hprof=[:options] classname

2. java -Xrunhprof[:options] classname

以下为 hprof 使用的帮助命令:

C:\Users\Administrator>java -agentlib:hprof=help

HPROF: Heap and CPU Profiling Agent (JVMTI Demonstration Code)

hprof usage: java -agentlib:hprof=[help]|[=, ...]

Option Name and Value  Description                    Default

---------------------  -----------                    -------

heap=dump|sites|all    heap profiling                 all

cpu=samples|times|old  CPU usage                      off

monitor=y|n            monitor contention             n

format=a|b             text(txt) or binary output     a

file=            write data to file             java.hprof[{.txt}]

net=:      send data over a socket        off

depth=           stack trace depth              4

interval=          sample interval in ms          10

cutoff=         output cutoff point            0.0001

lineno=y|n             line number in traces?         y

thread=y|n             thread in traces?              n

doe=y|n                dump on exit?                  y

msa=y|n                Solaris micro state accounting n

force=y|n              force output to         y

verbose=y|n            print messages about dumps     y

Obsolete Options

----------------

gc_okay=y|n

Examples

--------

- Get sample cpu information every 20 millisec, with a stack depth of 3:

java -agentlib:hprof=cpu=samples,interval=20,depth=3 classname

- Get heap usage information based on the allocation sites:

java -agentlib:hprof=heap=sites classname

Notes

-----

- The option format=b cannot be used with monitor=y.

- The option format=b cannot be used with cpu=old|times.

- Use of the -Xrunhprof interface can still be used, e.g.

java -Xrunhprof:[help]|[=, ...]

will behave exactly the same as:

java -agentlib:hprof=[help]|[=, ...]

Warnings

--------

- This is demonstration code for the JVMTI interface and use of BCI,

it is not an official product or formal part of the JDK.

- The -Xrunhprof interface will be removed in a future release.

- The option format=b is considered experimental, this format may change

in a future release.

默认情况下,hprof 出来的信息会写入当前 classpath 目录的 java.hprof.txt 文件中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值