- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
谁能告诉我javacore、线程转储和堆转储之间的确切区别?分别在什么情况下使用??
最佳答案
线程转储是所有 Activity 线程堆栈的转储。因此,对于分析应用程序在某个时间点的工作情况非常有用,并且如果在某个时间间隔完成,则有助于诊断某些类型的“执行”问题(例如线程死锁)。
堆转储是 Java 堆内存状态的转储。因此,对于分析应用程序在某个时间点对内存的使用情况非常有用,因此在诊断某些内存问题时非常方便,并且如果在诊断内存泄漏的时间间隔内进行,则非常方便。
这就是它们的“原始”术语,可以通过多种方式提供。通常用于描述来自 JVM 和应用服务器的转储文件,在这种形式下,它们是一种低级工具。如果由于某种原因您无法获得其他任何东西,这很有用,但您会发现使用体面的分析工具来获得类似但更容易剖析信息的生活会更轻松。
对于 WebSphere,一个 javacore 文件是一个线程转储,尽管它包含许多其他信息,例如锁和加载的类以及一些有限的内存使用信息,而 PHD 文件是一个堆转储。
如果您想读取 javacore 文件,您可以手动执行,但是有一个 IBM 工具(BM Thread and Monitor Dump Analyzer)可以使其更简单。如果要读取堆转储文件,您需要许多 IBM 工具之一:MDD4J 或堆分析器。
关于java - Websphere中javacore、线程转储和堆转储的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1300497/
我正在开发一个插件,该插件采用工作区中实现某些接口(interface)(IDomain)的所有枚举解析代码(使用 AST)对枚举进行一些修改并将其标记为使用注释(@IDomainInfo)处理。 例
我使用 Intellij IDEA 创建了新的 play 2.1 Java 项目,当我打开 Build.scala 文件来管理依赖项时,我发现 IDEA 无法解析某些依赖项,并且 play.Proje
注意到生产服务器 (Websphere8.5.5) 开始消耗大量内存。 javacore dump 中的数字清楚地表明罪魁祸首是过大的堆: | +--Memory Manager (GC): 5,4
我是一名优秀的程序员,十分优秀!