| 
                         现在来解释各列含义: 
- S0C、S1C、S0U、S1U:Survivor 0/1区容量(Capacity)和使用量(Used) 
 - EC、EU:Eden区容量和使用量 
 - OC、OU:年老代容量和使用量 
 - PC、PU:永久代容量和使用量 
 - YGC、YGT:年轻代GC次数和GC耗时 
 - FGC、FGCT:Full GC次数和Full GC耗时 
 - GCT:GC总耗时 
 
  
E、hprof(Heap/CPU Profiling Tool) 
hprof能够展现CPU使用率,统计堆内存使用情况。 
语法格式如下: 
- java -agentlib:hprof[=options] ToBeProfiledClass 
 - java -Xrunprof[:options] ToBeProfiledClass 
 - javac -J-agentlib:hprof[=options] ToBeProfiledClass 
 
  
完整的命令选项如下: 
- 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=<file> write data to file java.hprof[.txt] 
 - net=<host>:<port> send data over a socket off 
 - depth=<size> stack trace depth 4 
 - interval=<ms> sample interval in ms 10 
 - cutoff=<value> 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 <file> y 
 - verbose=y|n print messages about dumps y 
 
  
来几个官方指南上的实例。 
CPU Usage Sampling Profiling(cpu=samples)的例子: 
- java -agentlib:hprof=cpu=samples,interval=20,depth=3 Hello 
 
  
上面每隔20毫秒采样CPU消耗信息,堆栈深度为3,生成的profile文件名称是java.hprof.txt,在当前目录。 
CPU Usage Times Profiling(cpu=times)的例子,它相对于CPU Usage Sampling  Profile能够获得更加细粒度的CPU消耗信息,能够细到每个方法调用的开始和结束,它的实现使用了字节码注入技术(BCI): 
- javac -J-agentlib:hprof=cpu=times Hello.java 
 
  
Heap Allocation Profiling(heap=sites)的例子: 
- javac -J-agentlib:hprof=heap=sites Hello.java 
 
  
Heap Dump(heap=dump)的例子,它比上面的Heap Allocation Profiling能生成更详细的Heap Dump信息: 
- javac -J-agentlib:hprof=heap=dump Hello.java 
 
  
【编辑推荐】 
    - 对JVM还有什么不懂的?带你深入浅出JVM!
 
    - 一文带你深入理解JVM
 
    - 你真的了解JVM吗?
 
    - Java8 JVM内存结构变了,永久代到元空间
 
    - 竟然还有人没搞懂 JVM 类加载器?一文彻底明白
 
 
【责任编辑:武晓燕 TEL:(010)68476606】
 
            点赞 0                        (编辑:滁州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |