java - GenCollectForAllocation 是什么意思?

标签 java profile jfr

在读取 JFR 转储时,我想出了一个名为 GenCollectForAllocation 的 VM 操作,它比其他进程花费更多时间。谁能给我解释一下这个操作是什么?

Java Mission Control Snapshot

最佳答案

这就是触发安全点的原因(there are many of them)。您可以将其解读为:“a generationeration collect or just had an allocation failure”,这样一个安全点 将被触发以停止应用程序(stop-the-world 事件)。

这些似乎是累积时间,所以添加了所有时间的总和;考虑到次要 GC 经常发生,并且如果您的应用程序运行了很长时间 - 这并不是真正的问题。您还有 223 此类事件,最长 持续时间为 305 毫秒,但平均(9.786/223): 43 毫秒。这是一个健康的数字,恕我直言。

关于java - GenCollectForAllocation 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56877862/

相关文章:

java - SSL/TLS 版本兼容性?

java - 如何从另一个java应用程序运行一个java应用程序并在主程序返回后保持运行?

mysql - 用户个人资料不显示其数据

Java 任务控制堆配置文件

java - 将多个 onClickListener 和 OnClick 放在同一个 Activity 中

java - 寻找 Java 在线异常跟踪器

powershell - 如何在 PowerShell 中从脚本文件重新加载用户配置文件

asp.net - 值得使用 ASP.Net 内置的配置文件系统吗?

java - 如何为 JMX 和 Java 任务控制导入库?

java - JFR 线程争用中的计数和持续时间值到底是什么