问题标签 [heap-dump]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2162 浏览

java - Java 7 在未安装 JDK 的情况下触发堆转储

如何在未安装 JDK 的情况下为在 Linux 上运行的 Java 7 VM 触发堆转储?

在早期版本的 Java 中,可以设置-XX:+HeapDumpOnCtrlBreakJVM 选项,然后使用kill -QUIT <pid>. 我一直无法让它与 Java 7 一起使用。是否有与此等效的方法,而无需安装 JDK 来获取 JVisualVM 或 jmap。

0 投票
2 回答
1749 浏览

java - 解释来自 jboss 实例的 GC 日志

我们在生产中出现内存泄漏,我的 GC 日志如下。很明显,您可以看到这是一个问题。但是,我无法获得堆转储,因为当我们发现它有问题时为时已晚并且堆转储失败(即使使用 -F force 选项)。所以我试图找到一种方法来知道它什么时候会下降,这样我就可以进行堆转储。从这些日志中我能看到什么告诉我它几乎要崩溃了吗?谢谢!

这是我的 JVM 选项,我们使用的是 java 1.6。这是针对每月访问量约为 1500 万的高流量电子商务网站。想法?

0 投票
4 回答
2053 浏览

garbage-collection - 如何禁用在 WebSphere 中触发堆转储时发生的系统 GC?

我想捕获在生成堆转储时发生的系统 GC 期间收集的对象。有没有办法禁用该系统 GC?

0 投票
2 回答
12175 浏览

android - 如何将android中的堆转储转换为eclipse格式

我试图分析一个让我疯狂数周的内存泄漏,我发现了 eclipseMAT工具可以帮助你找出问题所在,问题是我发现的每一个教程都说我需要转换格式从 dalvik 到 HPROF格式的文件,但是我找不到一个教程来解释如何实际做到这一点,而是我得到了像这样的模糊的东西

现在您将获得的文件不符合“标准”Sun .hprof 格式,而是以 Dalvik 自己的格式编写的,您需要对其进行转换:

hprof-conv heap-dump-tm-pid.hprof 4mat.hprof

这实际上是什么意思?我点击什么?我要去哪?我完全迷失和沮丧,任何帮助都会有很长的路要走,谢谢。

0 投票
1 回答
198 浏览

java - 分配注释堆转储

是否有任何现有工具可以使用分配站点注释进行 Java 堆转储?通过这样的堆转储,我们可以通过它们的分配站点(粗略地说,创建对象的新语句)聚合运行时对象,除了按类类型聚合。

假设这种堆转储可用,你认为它对泄漏调试更有用吗?

0 投票
1 回答
620 浏览

java - 使用内存分析器 (MAT) 的扫描程序 OutOfMemoryError 和 Java 堆转储分析

我正在尝试分析我的 Java 小程序的堆转储,即使我增加了堆大小,如本文所示。小程序:Java 堆空间

现在我今天早上做了一些堆转储(是的..它可以进行数字转储),我试图用 MAT 和 Visual VM 1.3.5 分析它们。运行泄漏测试后,主要嫌疑人是 org.eclipse.jdt.internal.core.JavaModelManager 和 org.eclipse.jst.jee.archive.internal.ArchiveImpl .. 我在我的代码中没有使用这些。

Visual Vm 显示最高空间被 Byte[]、Int[]、Char[]、java.lang.string 和 short[] 类占用。我没有在我的程序中使用太多这些。我应该如何理解这个转储以及我的下一步应该是什么?如果需要,我可以发布转储的副本。

更新:在我的情况下,MAT 比视觉 VM 更好。从早上开始,我一直在进行转储(再次......数字转储)并使用这两种工具分析它们。虽然 VVM 在其泄漏嫌疑报告中显示 org.eclipse.jdt.internal.core.JavaModelManager 和 org.eclipse.jst.jee.archive.internal.ArchiveImpl 作为嫌疑人,但 Eclipse 内存分析器 (MAT) 显示我的摇摆应用程序正在文件夹中图像的缩略图(每个图像大约 100kb)并将它们显示为 JToggleButton。但是一旦添加了缩略图,JtoggleButton 的大小为 6MB。因此,如果文件夹中有 100 张图像,则图像的缩略图至少为 600MB。除此之外,我还需要用这个程序做其他事情。在这种情况下,MAT 有助于识别占用最多堆空间的确切对象。

谢谢DJ。

0 投票
2 回答
277 浏览

scala - 在正在运行的进程中获取 scala 列表的内容?

我有一个正在运行的 Scala 进程,并希望在该进程中获取 List 的内容。我知道进程的 PID 和 List[String] 的名称,并且我已经使用 VisualVM 进行了堆转储。有没有办法让我找到该特定列表的实际内容并将其保存在某个地方?

0 投票
2 回答
520 浏览

java - 5亿(双)值的Java数据结构?

我正在为具有 32678 个顶点的完整图生成随机边。所以,5亿+的价值。

我正在使用 HashMap 将边缘用作键,将随机边缘权重用作值。我不断遇到:

线程“main”中的异常 java.lang.OutOfMemoryError:java.lang.StringBuilder.toString(StringBuilder.java:430) at pa1.Graph.(Graph.java:60) at pa1.Main.main(Main) 处的 Java 堆空间.java:19)

然后,该图将用于构建最小生成树。

关于更好的数据结构或方法的任何想法?

我知道有分配更多内存的覆盖,但我更喜欢按原样工作的解决方案。

0 投票
2 回答
1347 浏览

tomcat - How to determine which JVM is attached to the running application?

I want to build a workflow in BMC Atrium Orchestrator which takes the heap dump of particular java process. The flow which I have to follow is : 1. Input the application name. 2. Find the JVM which is being used by the entered application. 3. Take heap hump of a process running on that JVM.

Can I get some help with step 2, i.e. how can I determine which JVM is being used by the running application?

Thanks in advance.

0 投票
2 回答
2541 浏览

java - JMap 转储格式规范

jmap 堆转储格式是否有任何开放规范?

感谢帮助!