java hprof文件如何打开

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java hprof文件如何打开相关的知识,希望对你有一定的参考价值。

文件有1个G左右

通过输入adb命令的方式抓取,通过adb pull或其他方式将这个文件导出来和通过DDMS抓取。

一、Java简介:

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

二、抓取hprof文件步骤:

1、命令行方式抓取,方法如下:

a) 通过输入adb命令的方式抓取,PIDXXX为对应进程的PID:

adb remount

adb shell chmod 0777 /data/misc

adb shell kill -10 PIDXXX

b) 会在/data/misc目录下生成一个以pidXXX.hprof结尾的hprof文件。

c) 然后通过adb pull或其他方式将这个文件导出来即可。

2、通过DDMS抓取:

a) 打开Eclipse,点击device窗口的Dump Hprof file 图标(绿色圆柱体,右边一条向下红色箭头线)  。 

b) 等几秒中会弹出保存hporf的路径,然后就可以获取到当时的hprof了。

参考技术A J2SE中提供了一个简单的命令行工具来对java程序的cpu和heap进行 profiling,叫做HPROF。HPROF实际上是JVM中的一个native的库,它会在JVM启动的时候通过命令行参数来动态加载,并成为 JVM进程的一部分。若要在java进程启动的时候使用HPROF,用户可以通过各种命令行参数类型来使用HPROF对java进程的heap或者 (和)cpu进行profiling的功能。HPROF产生的profiling数据可以是二进制的,也可以是文本格式的。这些日志可以用来跟踪和分析 java进程的性能问题和瓶颈,解决内存使用上不优的地方或者程序实现上的不优之处。二进制格式的日志还可以被JVM中的HAT工具来进行浏览和分析,用 以观察java进程的heap中各种类型和数据的情况。
在J2SE 5.0以后的版本中,HPROF已经被并入到一个叫做Java Virtual Machine Tool Interface(JVM TI)中。

以上是关于java hprof文件如何打开的主要内容,如果未能解决你的问题,请参考以下文章

如何打开hprof文件

打开 HPROF 文件时出错:IOException: Unknown HPROF Version

java内存检测

打开堆转储时出错

Memory Analyzer(MAT)打开android eclipse Dump内存文件出现错误

jvisualvm:卡在“加载堆转储”屏幕上