hprof相关内容
我正在 Eclipse Memory Analyzer(也称为作为垫).有时我会发现 android.graphics.Bitmap 类的奇怪实例,利用了大部分的堆.问题是我找不到这个位图的来源,没有文件名,没有resourceID,什么都没有.我可以为位图找到的所有信息如下: 我假设有一个字段 mBuffer 包含图像像素数组.但它是某种内部 Android 格式,而不是 PNG.
..
谁能告诉我 Android Studio 中 HPROF Viewer 中粗体、蓝色一和红色一位置的确切含义是什么? 我在“参考树"面板中询问了一个. 最好的问候. 解决方案 我找不到任何关于此的文档,但通过查看一些堆转储,它们似乎是这样的: blue - 实例最接近的 dominator在右上角的窗格中选择. bold - GC 根,例如深度为 0 的实例,不被收集.
..
我正在使用 Java Mission Control 分析 Java 应用程序,飞行记录的主页上说“即使 CPU 负载很高,此记录也包含很少的分析样本.因此,分析数据可能不相关." 这似乎是实话.我要求它每 10 毫秒采样 3 分钟,应该是 18000 个样本,但我只看到 996 个样本. 它继续解释“因此分析数据可能不相关.这可能是因为应用程序运行了大量 JNI 代码,或者 JVM
..
我使用的是 jdk64,我的 java 版本是“1.6.0_24".我的 tomcat 使用 -Xmx7196m 运行,而 jvisualvm 使用 -J-Xms2048m -J-Xmx3072m 运行.我对我的 tomcat java 进程进行了堆转储,我的 .hprof 文件的大小约为 5.5 GB.当我尝试打开这个堆转储时,它只是停留在 Loading Heap Dump... 屏幕上.
..
为什么每个对象看起来都被标记为新对象,而不只是第二个快照中的对象,而不是我的基准快照中的对象?在线浏览时,我看到一些建议,我需要使用hprof而不是jmap来进行内存转储,但是看来hprof会以完全相同的格式生成转储. 这是JDK 1.6.0_14;我在Windows和UNIX上都尝试过. 解决方案 jhat -baseline 确实不适用于 jmap 生成的转储.我不确定,但是我相
..
我正在研究使用Eclipse的内存分析器(MAT)分析HPROF文件. 支配者树,报告和OQL界面看起来非常有用.但是,所有这些都必须通过MAT软件手动完成. 有一个命令行界面,以便我可以以编程方式解析HPROF并自动生成自定义报告. 这对于将其集成到测试基础架构以进行自动内存分析很有用. 顺便说一句,堆大小将在10-60MB之间. 解决方案 ParseHeapDump.
..
有人可以告诉我Android Studio中HPROF Viewer中的粗体,蓝色1和红色1位置到底是什么意思吗? 我在“参考树"面板中询问了一个. 最诚挚的问候. 解决方案 我找不到关于此的任何文档,但是通过查看一些堆转储,它们似乎是这样的: blue-最接近顶部的实例的统治者右窗格. bold-GC根,例如,应该收集 not 的深度为0的实例. 此答案具有有关GC根
..
我有一个非常大的堆转储(.hprof)文件(16GB).当我尝试在Visual Vm中打开它时,VM挂起了.我试图在JProfiler中打开它. Jprofiler给了我一个内存不足的错误.以下是我的jprofiler.vmoptions的外观.我应该使用什么理想的配置才能顺利打开HPROF?我在8GB的Linux机器上运行. -Xmx1536m -XX:MaxPermSize = 128m
..
我有一个Tomcat应用程序服务器,该服务器配置为在OOM上创建内存转储,并且以-Xmx1024M开头,因此应为他提供1G的存储空间. 现在,我找到了一个这样的转储,它仅包含260MB的未保留内存.转储怎么可能比他应该拥有的大小小得多? 解决方案 Permgen空间是独立于堆进行管理的,即使总体上有大量可用内存,该空间也可能会用完.某些Web框架(尤其是JSF)是真正的猪,虽然很容易
..
当我的jboss服务器运行xms为4096m,xmx为4096m,permsize为512m时,我最近以hprof格式创建了一个heapdump。 hprof生成的文件超过5GB。当我在visualvm,mat analyzer或yourkit中加载heapdump时,我只看到大约1gb的总字节数。我已经尝试更改yourkit中的可访问性范围,但它没有显示超过1 GB。 知道文件大小与
..
我使用以下参数启动我的java代码(Vista中的1.6.0_16) -XX:+ HeapDumpOnOutOfMemoryError -XX:HeapDumpPath = .. / logs 。我运行代码,我可以在日志中看到有两个OOM。 我知道的第一个因为我可以在stdout中看到正在创建hprof文件: java.lang.OutOfMemoryError:Java堆空间 将堆
..
我有一个大的(5GB)hprof转储,当发生 OutOfMemoryError 时由应用程序创建。 (使用 XX:HeapDumpOnOutOfMemoryError )。 不幸的是,发生此错误时没有收集日志。重新创建这将需要几个小时。我希望有些工具可以显示异常堆栈跟踪或来自hprof的所有线程堆栈等。 我目前正在使用 MAT ,无法看到获取线程信息的方法。我可以使用哪种工具?
..
我有一个可疑的java进程。我想看看使用各种HPROF分析工具有什么用。 如何动态生成? 解决方案 是的。您可以使用Sun的Java VM附带的jmap工具动态生成一个hprof文件(包含堆内存使用情况): jmap -dump:file =
..
我使用此命令使用hprof创建了一个堆转储文件: java -agentlib:hprof -cp“.. \\ \\..\jars\trove.jar; .\bin“com.mysite.MyApp 这成功创建了大约5MB的文件“java.hprof.txt”。然后我打开jvisualvm来查看这个文件,并加载它。但是visualvm似乎卡在加载屏幕上。下面的屏幕现在已经
..
有哪些工具可用于查看内置JVM Profiler的输出?例如,我正在启动我的JVM: -agentlib:hprof = cpu = times,thread = y,cutoff = 0,format = a,file = someFile.hprof.txt 这会在hprof中生成输出(“ JAVA PROFILE 1.0.1“)格式。 我过去使用 HPjm
..
我想使用HPROF来分析我的Hadoop作业。问题是我得到 TRACES ,但 profile.out中没有 CPU SAMPLES 文件。我在run方法中使用的代码是: / **获取配置* / 配置conf = getConf(); conf.set(“textinputformat.record.delimiter”,“\\\ \\\ ”); conf.setStrings(
..
我试着使用HPROF文件从日食DDMS视图,检查内存泄漏。 我试着用MAT来读取保存在磁盘上的.hprof却得到了错误: 错误打开堆转储“com.myapp.myapp.hprof”。查看更多详细信息,错误日志。 错误打开堆转储“com.myapp.myapp.hprof”。查看更多详细信息,错误日志。 未知HPROF版(JAVA PROFILE 1.0.3)(java.io.IOExcept
..
由于已经详细说明许多有益的网站,人们分析的Android应用程序的内存使用的方法是执行“杀人-10 [PID]”触发HPROF转储。这似乎工作在某些设备上,以及logcat中通常包含这样的: I / dalvikvm(32170):主题ID = 3:反应信号10 I / dalvikvm(32170):SIGUSR1强制GC和HPROF转储 I / dalvikvm(32170):HPRO
..
随着时间的时候,在我的应用程序实现新功能尤其是当我使用DDMS + HPROF分析内存和堆的使用。由于应用程序似乎并没有什么表现,ANR问题,一切工作进展顺利,一开始我并没有在意它 - 但现在,当我看到它的大致总是相同的大小,我不知道什么该死的可以在可以。 每次我运行一个HPROF,我检查的泄漏嫌疑人的标签。总有一个 android.graphics.Bitmap 实例通吃使用的堆的大约25%。
..
我的调查与分析使用Eclipse的内存分析器(MAT)一个HPROF文件。 支配树,报告和OQL界面看起来真的很有用。但是,这一切都必须手动从MAT软件来完成。 有一个命令行接口,这样我就可以programmically解析HPROF并自动生成自定义报告。 这将是有益的整合这是一条测试的基础设施做了自动内存分析。 顺便说一句,堆大小是会10-60MB之间。 解决方案 ParseHeapD
..