G1GC 日志中的时间

2023-12-06

我读过 G1GC 日志中打印的一些不同时间的描述,但无法真正证明/理解当我在本地生成它们时。例如,以下日志是在我的 Java 11 电脑上生成的。我想知道,第一行的 0.500 毫秒与第二行的 0.01 秒有什么区别?应用程序是否暂停(由于 STW)0.500 毫秒或 10 毫秒(0.01 秒)?我尝试了像 GCeasy 这样的工具,它显示最大暂停时间为 10 毫秒,在 Real = 0.00 的情况下,GCeasy 显示最小暂停时间为 0 毫秒。我想知道,那么0.500ms代表什么样的停顿呢?

[9.090s][info][gc ] GC(25) 暂停年轻(正常)(G1 疏散暂停)77M->2M(128M) 0.500ms

[9.090s][信息][gc,cpu] GC(25) 用户=0.00s 系统=0.00s 实际=0.01s

编辑:gc.logs 与 JMC 中的 GC 暂停时间差异

0.687ms pause in gc.log enter image description here

Where as 1.331 second according to JMC enter image description here


我不确定是否应该将此作为答案发布,因为这是my理解这个日志,但对于评论来说似乎太大了。

总时间为STW事件是0.500ms如果你用眼睛看G1GC两者都不是0.500ms nor 10ms如果你采取Shenandoah例如。当你使用G1GC, STW event被视为0.500ms, using Shenandoah,将导致0.500ms + delta;在哪里这个delta将是携带所有内容所花费的累积时间java threads to a safepoint(也叫TTSP- 到达安全点的时间)+为此需要进行的任何清理工作safepoint。也许一张图片会让这件事变得更容易:

   |------|------------------------|---------| 
   | TTPS |   G1 Evacuation Pause  | CleanUp |
   |------|------------------------|---------|

G1GC视为STW Event the G1 Evacuation Pause region only. Shenandoah例如,将整个事物视为STW活动(所有 3 个地区)。谁是对的?我将把这件事留给你来决定。

您可以启用安全点粒度G1GC via -Xlog:safepoint*, 例如。

你使用的工具有自己的“意见”哦,我想如何对待每次产生的日志;但绝对不是10 ms。为什么?正如您已经看到的(正如您在评论中所说),有时您会在日志中得到类似的内容:

[9.090s][info][gc ] GC(25) Pause Young (Normal) (G1 Evacuation Pause) 77M->2M(128M) 0.500ms

[9.090s][info][gc,cpu ] GC(25) User=0.00s Sys=0.00s Real=**0.00s**

注意Real=0.00s。这是否意味着有no pause?当然不是,这只意味着没有消耗cpu时间。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

G1GC 日志中的时间 的相关文章

  • TestNG 启动期间发生内部错误

    我创建了一个 TestNG 类 FirstTest java 当我将测试用例作为 TestNG Test 运行时 出现以下错误 期间发生内部错误 启动 FirstTest java lang NullPointerException Ecl
  • Criteria eager fetch-joined 集合以避免 n+1 选择

    假设 Item 和 Bid 是实体 一个 Item 有多个 Bid 它们被映射到休眠在典型的父子关系中
  • 如何在 Android 中恢复我的音频?

    我必须实现用于创建具有暂停和恢复状态的音频的应用程序 当我的应用程序作为启动时音频启动 当我按下模拟器上的后退按钮时 音频音乐处于暂停状态 但是当我的活动回来时从停止状态到前台我的音频音乐未恢复 这是我的代码 public class Au
  • Spring boot 404错误自定义错误响应ReST

    我正在使用 Spring boot 来托管 REST API 即使浏览器正在访问 URL 以及自定义数据结构 我也希望始终发送 JSON 响应 而不是使用标准错误响应 我可以使用 ControllerAdvice 和 ExceptionHa
  • Java - 了解 PrintWriter 和刷新的需要

    好吧 首先我对所有代码表示歉意 但我觉得代码太多总比代码不够好 我正在制作一个简单的聊天客户端和印刷机 尤其是我正在努力解决的问题 使用现在的代码 它将与服务器类交互 并且完美地打印我想要打印的内容 但是 当我删除 writer flush
  • 使用 Thymeleaf 时我们应该删除 HTML 属性吗?

    我正在研究 Thymeleaf 发现几乎所有示例中都有 Thymeleaf 的标签值以及标准 HTML 值 例如 这些
  • Android Google 地图:隐藏整个地图的多边形或形状

    我试图隐藏除一个区域之外的整个地图 因为我使用的多边形在我想要显示的区域中有一个洞 问题在于 根据缩放的不同 空白区域会被多边形的颜色覆盖 或者多边形会失去其颜色 这是代码 polygon hide all world map float
  • Java中的运算符重载和覆盖

    运算符重载和运算符重写有什么区别 它们在继承和控制台程序中是否相同 Java 不支持运算符重载和重写 检查以下引用自的描述 http java sun com docs white langenv Simple doc2 html http
  • Android 上的自定义视图和窗口属性

    我想要做的是在我的应用程序顶部添加一个视图 该视图类似于过滤器视图 我想操纵屏幕的颜色 并且我还希望能够同时更改屏幕的亮度时间 这两件事似乎是分开起作用的 但不能一起起作用 这是我的代码 添加视图 colourView new Layer
  • 添加和完成 PHP 源代码文档的工具 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有几个已完成的较旧的 PHP 项目 其中有很多内容 我想以 javadoc phpDocumentor
  • 无法从 ViewPager 中的 Fragment 编辑 ActionBar 标题

    我有一个Activity它通过一个托管多个片段ViewPager 在活动的onCreate方法我使用以下代码来更改ActionBar title Toolbar toolbar findViewById R id toolbar setSu
  • C3P0:生产中未返回的连接超时?

    参数unreturnedConnectionTimeout给定时间段后未返回的连接超时 我正在尝试决定是否应该在我的制作中使用它persistence xml 使用它的一大优点是连接池将能够从泄漏的连接中恢复 一个很大的缺点是泄漏的连接将很
  • 错误:列“this_.phitorsionangle”必须出现在 GROUP BY 子句中或在聚合函数中使用

    我在执行 sql 查询时遇到了一些问题 我正在使用 Hibernate Criteria 来构建查询 我通过按一定间隔 binSize 舍入值然后对它们进行分组来从数据库创建一些容器 当我直接在 SQL 中使用查询尝试时 效果非常好 SEL
  • org.apache.catalina.core.JreMemoryLeakPreventionListener 中急切调用 URLConnection 的 setDefaultUseCaches(false) 是什么原因

    这个问题可能有点难以找到答案 这是一个系列中的问题考虑使用 Policy getPolicy 的原因是什么 因为它将保留对上下文的静态引用并可能导致内存泄漏 https stackoverflow com questions 7057421
  • JavaFX 8 默认消息图标

    随着 JavaFX 的最近几次更新 我们收到了警报 我想获取消息的默认图标 错误 警告 在Swing中 我可以通过一些方式获取L F消息图标UIManager的属性 如何在 JavaFX 中获取消息的默认图标 它们是包含在属性中 还是由 C
  • 从字符串中提取文本 Java

    使用此字符串 ADACADABRA 如何从java中的字符串 ADACADABRA 中提取 CADA 以及如何提取 和 之间的id从下面的链接 http www youtube nocookie com embed zaaU9lJ34c5
  • JSF“总”变量类似于 JSTL 中的 c:set

    我不喜欢 JSF 但我需要用它来解决这个问题 我正在 纯 JSF 中工作 所以这就是我基本上需要的 但我不知道如何用 JSF 来实现它
  • 使用 OpenNLP 获取句子的解析树。陷入困境。

    OpenNLP 是一个关于自然语言处理的 Apache 项目 NLP 程序的目标之一是解析一个句子 并给出其语法结构的树 例如 天空是蓝色的 这句话 可能会被解析为 S NP VP The sky is blue where S是句子 NP
  • Hibernate 命名查询使用 Like 和 % % 运算符?

    在我的 Hibernate JPA 示例代码中 public List
  • 丰富:数据表行跨度问题

    我需要创建一个 rich dataTable 甚至扩展 具有以下功能 我有一个公司类 其中包含产品对象的集合 我想展示下表 我仍然没有弄清楚如何使用子表执行此操作 在所有示例中 我发现子表具有与主表完全相同的列 据推测 我需要在前两列中使用

随机推荐

  • 如何控制绑定到 CustomObject 的 DataGridView 中的列类型?

    我在 C WinForms 应用程序中有一个 DataGridView 它在运行时 通过 Form Load 数据绑定到自定义对象 在 DataGridView 的设计视图中 我没有设置列 当表单加载时 将根据数据绑定到的自定义对象中的数据
  • 有负零吗?

    我正在编码简单的计算器只是为了开始 iPhone 开发 问题是我有一个 按钮 它应该通过执行一个简单的操作来否定已经放在屏幕上的任何内容 1 它工作正常 除非先前的输入是0 设想 屏幕空白或0 我点击 进行否定 然后当我点击例如9我希望它能
  • Java 中带有参数的高效 XSLT 管道

    这个问题的最佳答案描述了一种在 Java 中实现高效 XSLT 管道的技术 Java 中的高效 XSLT 管道 或将结果重定向到源 不幸的是 虽然 Transformer 似乎公开了一个用于设置 XSLT 参数的 API 但这似乎没有任何效
  • 如何使用 Jest 测试 asnyc 代码(或使用 jsdom 测试“image.onload”)

    编辑 我已经用 Promise 方式更改了我的代码 我正在写反应this由facebook创建的starter 我是测试方面的新手 现在我有一个关于图像的组件 它有一个检查图像大小的功能 import React Component fro
  • Drupal 7 Views - 按字段列出组

    我有一个列出类型内容的视图Bio 人物传记 但是 我想对其进行格式化 以便将它们分组在不同的标题下 我添加了一个新字段Bios内容类型是一个包含三个不同选项的下拉列表 Foo Bar and Baz 我想做的是将人员显示在各自组的标题下 现
  • 当视图使用主布局时,MVC 4 \ 表单提交按钮不起作用

    ok 经过长时间的调查 似乎当我创建一个与 layout cshtml 一起使用的视图时 我所拥有的表单中的提交按钮不起作用 没有任何操作返回到控制器 仅当我创建视图并取消选中 使用布局或母版页 时 该按钮才起作用 这看起来非常不清楚 所以
  • 如何使用 Spring RestTemplate 将列表或字符串数​​组传递给 getForObject

    我正在用 Spring 开发一些宁静的服务 我在将字符串数组或大字符串作为参数传递 获取到服务控制器时遇到问题 我的代码示例如下 控制器 RequestMapping value getLocationInformations pointL
  • HttpClient 订阅的响应标头未定义

    谁能告诉我为什么在从 http post 获取响应时没有收到任何标头的原因 this http post
  • 版本 5.5.4+ 中的 ItextSharp 字体颜色问题

    我有一些代码使用红色字体颜色创建红色 图章 string StampDate DateTime Now ToString MM dd yyyy string FontPath Server MapPath assets Fonts stri
  • 使用 Hadoop 版本 2.7.2 从 Spark 使用 S3a 协议访问 S3

    我正在尝试从 pyspark 版本 2 2 0 访问 s3 s3a 协议 但遇到了一些困难 我正在使用 Hadoop 和 AWS sdk 软件包 pyspark packages com amazonaws aws java sdk pom
  • OSMDroid:onTap 示例

    几周前我开始学习 Android 现在我需要你的帮助 我的任务是创建离线地图 使用 OSMDroid 和 Mobile Atlas Creator 上面有两个标记 它们之间的路径以及单击此标记后的一些活动 我已经做好了地图 标记和路径 这是
  • 如果缓存文件夹中不存在文件,则重写 htaccess

    我想检查缓存文件夹中是否不存在文件 然后将其重新连接到 php 文件 RewriteCond DOCUMENT ROOT cache 0 f NC RewriteRule jpg png gif css js include cache o
  • geodjango中按距离排序的效率如何(整个表)

    假设我有以下数据模型 Person models Model id models BigAutoField primary key True name models CharField max length 50 location mode
  • minSDK 低于 11 的 Android 设备上的 Google 地图 v2

    当我创建使用 Google 地图 API v2 的项目时 我遇到了这一行的问题 GoogleMap 地图 MapFragment getFragmentManager findFragmentById R id map getMap 据说我
  • ObjectListView 显示图标

    尝试将图标放入 ObjectListview 中 这是我应该放置图标的代码 objectListView1 SmallImageList imageList1 deleteColumn IsEditable true deleteColum
  • 使用 extjs 4 嵌套网格

    我可以将网格放入另一个网格的插件中 这是我的网格 我想放入配置 插件 扩展网格 var grid new Ext grid GridPanel store store columns header Customer Name dataInd
  • 是否可以在javascript中取消打印

    我正在使用这里找到的代码 检测浏览器打印事件检测用户是否想要打印该页面 到目前为止 它按预期工作 在 afterPrint 函数中 我调用一个函数 该函数创建并附加一个 iframe 其中包含另一个页面 该页面具有不同的 对需要打印的内容更
  • scanf 跳过所有直到出现字符串

    是否可以使用 scanf 跳过所有字符 直到到达特定字符串 我有一个 html 文件 我想跳过此字符串之前的所有字符 包括该字符串 h2 a href a href a a h2
  • 压缩阻塞文件中的记录的好算法是什么?

    假设您有一个由一堆固定大小的块组成的大文件 每个块都包含一定数量的可变大小的记录 每条记录必须完全适合单个块 并且根据定义 此类记录永远不会大于整个块 随着时间的推移 随着记录从这个 数据库 中移入和移出 记录会被添加到这些块中或从这些块中
  • G1GC 日志中的时间

    我读过 G1GC 日志中打印的一些不同时间的描述 但无法真正证明 理解当我在本地生成它们时 例如 以下日志是在我的 Java 11 电脑上生成的 我想知道 第一行的 0 500 毫秒与第二行的 0 01 秒有什么区别 应用程序是否暂停 由于