gpt4 book ai didi

java - 堆转储中的对象创建时间

转载 作者:行者123 更新时间:2023-11-30 11:48:25 25 4
gpt4 key购买 nike

有没有办法从 Java 进程的堆转储中计算出(甚至近似)对象的创建时间?

请假设我无权访问代码并且我必须使用给定的转储。所以我不能把时间戳放在构造函数中。

最佳答案

我认为您无法从给定的转储中找到时间戳,但如果您可以创建新的转储,这里有一些建议。

如果您只需要非常粗略的时间分辨率,例如(启动后、5 分钟后、手动触发错误之前、手动触发错误之后等),那么您可以获取多个转储并进行比较。

否则,如果您能够添加代理并再次运行场景,您可以自行记录。在*$JAVA_HOME/demo/jvmti 目录* 中使用您的 JDK,有一个示例代理程序 heapTracker 可以跟踪对象创建删除。这可以很容易地修改为也包括时间戳。参见 Tools Interface

关于java - 堆转储中的对象创建时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8815489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com