hotspot 垃圾收集器_HotSpot增量Java垃圾收集器

hotspot 垃圾收集器

在我最近的博客文章“ 确定活动的HotSpot垃圾收集器”中 ,我描述了可用于确定HotSpot JVM (Java进程)正在使用的垃圾收集器(当从命令行参数(标志)中变得不明显时)的不同方法。传递给Java启动器 。 对于重要的Java应用程序,我倾向于使用Java启动器显式指定适当的垃圾收集器标志,以免对使用哪个收集器产生任何疑问: -XX:+UseParallelGC ( 或 -XX:+UseParallelOldGC )用于并行/吞吐量收集器 , -XX:+UseConcMarkSweepGC用于并行标记扫描 (CMS)收集器, -XX:+UseG1GC用于垃圾优先垃圾收集器 , -XX:+UseSerialGC用于串行垃圾收集器 。

如果未明确指定所有垃圾收集器JVM标志,则虚拟机将选择垃圾收集器,并且可以使用JDK命令行工具jcmd或其相关的JMX MBean实现DiagnosticCommandMBean (通常通过JConsole)来标识VM选择了哪个垃圾收集器。 或VisualVM )。 在某些情况下,由于不存在我之前的列表中存在的特定HotSpot JVM标志,所以指定了特定的垃圾收集器。 在本文中,我将简要介绍以下内容之一: -Xincgc

Oracle为Java启动器java提供的JDK工具和实用程序文档简要描述了-Xincgc 。 Java SE 6的java可执行文件和Java SE 7的java可执行文件的-Xincgc描述了-Xincgc :“启用增量垃圾收集器。 增量垃圾收集器(默认情况下处于关闭状态)将减少程序执行期间偶尔出现的长时间垃圾收集暂停。 增量垃圾收集器有时会与程序并发执行,在此期间将减少程序可用的处理器容量。”

-Xincgcjava文档状态的Java SE 8版本:“启用增量垃圾收集。 JDK 8中不推荐使用此选项,而无需替换。” 从Java 8开始不推荐使用增量收集器,这在《 JDK 8兼容性指南 》的“ 不推荐使用的API ”部分中得到了确认:“ -Xincgc选项不推荐使用。” 有关为什么在JDK 8中不赞成使用此垃圾收集组合和其他垃圾收集组合的更多详细信息,请参见JEP 173 (“淘汰一些很少使用的GC组合”)和JEP 214 (“删除JDK 8中不推荐使用的GC组合”)。

看来-Xincgc在JDK 8之后将不可用。对于支持-Xincgc的JVM版本,一个问题可能是运行增量式垃圾收集器对于垃圾收集器而言意味着什么。 先前参考的《 JDK 8兼容性指南 》指出,“增量CMS”是现已弃用的“垃圾收集器组合”之一。 还已经指出 ,Java 6中的“ -Xincgc简单地转换”为“ -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode 。 接下来的两个屏幕快照展示了Java 8中小型,简单的Java应用程序的情况。 第一个快照描述了在指定和不指定-Xincgc情况下相同可执行JAR( -jar )的运行。 第二个快照描述了为同一应用程序选择的不同VM选择的命令行标志,这些标志是指定或不指定-Xincgc的结果。

20160507-正在运行JavaProcessesWithAndWithoutXincgc

20160507-垃圾收集器标志WithWithWithWithoutXincgc

这些屏幕快照表明, 指定-Xincgc时,用于此简单可执行JAR应用程序的Java 8 VM选择并行/吞吐量收集器( -XX:+UseParallelGC ),并选择带有附加标志的CMS收集器( -XX:+UseConcMarkSweepGC-XX:+CMSIncrementalMode-Xincgc明确规定。 还值得指出的是,当使用-Xincgc运行Java 8 HotSpot Java启动器时,会显示一条弃用警告消息(我已强调 ):“ Java HotSpot(TM)64位服务器VM警告:使用增量CMS是不推荐使用,可能会在将来的版本中删除。”

我认为值得在与垃圾回收相关的不赞成使用的JVM标志上发布,因为可以从此讨论中进行一些高级观察:

  • 除了直接指定特定垃圾收集器的HotSpot VM标志外,其他标志也可以暗示垃圾收集器。
  • jcmd工具不仅在不提供JVM标志的情况下,而且对于使用暗示特定收集器的标志(例如-Xincgc表示CMS收集器)的情况,都有助于识别使用哪个垃圾收集器。 。
  • 增量CMS收集器即将消失。 任何考虑升级到Java 9的人都可能会发现,应谨慎检查其应用程序使用的VM标志,以识别当前正在使用增量CMS收集器( -Xincgc )的情况。 如果在Java 8上运行,则应该已经有弃用警告,如本文所展示。
  • 这提醒我们,尽管Java和JVM在很大程度上仍是向后兼容的语言和平台,但某些功能和功能有时会被删除(通常很少使用或存在严重缺陷的功能)。

翻译自: https://www.javacodegeeks.com/2016/05/hotspot-incremental-java-garbage-collector.html

hotspot 垃圾收集器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/335983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【安卓开发 】Android初级开发(一)控件通用属性

控件通用属性 match_parent 是指和父容器宽高相等的值,其他的同理可证。 android:layout_marginTop"XXXXXXdp" 距离顶部的距离 Android TextView属性详解 该控件相关属性 Android EditText属性大全 相关属性查看地址 事件监听处理 package com.examp…

认证令牌_Java应用程序的令牌认证

认证令牌建筑物身份管理,包括身份验证和授权? 尝试Stormpath! 我们的REST API和强大的Java SDK支持可以消除您的安全风险,并且可以在几分钟内实现。 注册 ,再也不会建立auth了! 2016年5月12日更新&#xf…

java package报错_Java基础知识总结 - 超详细篇(上)

1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库JVM(java虚拟机)。3&#xff0c…

weblogic 建立websocket连接报404_基于 Serverless 与 Websocket 的聊天工具实现

传统业务实现 Websocket 并不难,然而函数计算基本上都是事件驱动,不支持长链接操作。如果将函数计算与 API 网关结合,是否可以有 Websocket 的实现方案呢?API 网关触发器实现 WebsocketWebSocket 协议是基于 TCP 的一种新的网络协…

monolith_将Java EE Monolith雕刻成微服务

monolith在介绍了为什么微服务应该由事件驱动的简介博客之后,我想采取一些其他步骤,并在有关博客的同时准备我即将进行的一系列演讲(在jBCNconf和Red Hat Summit上与您见面) 。旧金山 )。 在Twitter christianposta上关…

spring内容协商管理_Spring框架中的内容协商

spring内容协商管理1.简介 使用BeanNameViewResolver完成的工作就是,我们刚刚在Spring上下文中创建了多个bean视图以生成预期的输出。 Spring很快引入了内容协商策略 ,该策略可以使用传统的RESTful ResponseBody方法和HTTP消息转换器,以JSON或…

二叉树专题

二叉树 (一)二叉树的三种遍历方式: 前序遍历 : 1 2 4 5 3 6 7 ; 中序遍历 : 4 2 5 1 6 3 7 ; 后序遍历 : 4 5 2 6 7 3 1 ; 本质是在递归序的基础上…

echart中拆线点的偏移_Real BIM | Rhino+Grasshopper在双曲异形玻璃幕墙中的应用

转载请联系并注明来源你好,我以自己所做的项目为例,介绍一下我的认知里,BIM技术对于真实项目的作用。案例是一个异形、双曲面的玻璃屋盖幕墙系统。如效果图所示,玻璃屋盖呈波浪状,塔楼装饰条与屋盖装饰条需要无缝连接。…

【安卓开发】Android初级开发(okhttp3发送带header与带参数的GET请求)

1.首先需要先加入相应依赖 dependencies{implementation com.squareup.okhttp3:okhttp:3.13.1 implementation com.squareup.okio:okio:2.2.2} 2.加入互联网权限 <!-- 互联网 --><uses-permission android:name"android.permission.INTERNET" /> <!…

sql 返回日期的年月部分_公示|2020年11月部分志愿活动名单公示

2020年11月部分志愿活动名单公示2020年11月18日人文与法学学院院楼协助分发教职工运动会服装志愿活动2020年11月19日人文与法学学院院楼“收彩旗”志愿活动2020年11月20日人文与法学学院组织观看2020年全国科学道德和学风建设宣讲教育报告会直播志愿活动(此活动不录入i志愿)202…

【安卓开发 】Android初级开发(三)动画

逐帧动画 方法一&#xff0c;在xml中设置 1.先将图片加入drawable 2.在drawable中新建xml,设置每一帧的图片和时间 <?xml version"1.0" encoding"utf-8"?> <animation-list xmlns:android"http://schemas.android.com/apk/res/android&…

javafx swing_Swing应用程序中的JavaFX 8 DatePicker

javafx swing1.概述 本文显示了一个使用JavaFX 8 DatePicker控件的Java SE 8 Swing应用程序的示例。 DatePicker控件允许用户以文本形式输入日期或从日历弹出窗口中选择日期。 本示例使用其中带有FX控件的Swing JFrame 。 为了将FX内容嵌入Swing应用程序中&#xff0c; javafx…

cup过高是什么意思_做青和焙火有什么关系?

武夷岩茶制作工艺复杂&#xff0c;环环相扣&#xff0c;每一步工艺对下一步工艺都有很大的影响&#xff0c;经过一系列的生化变化&#xff0c;最终呈现一杯好茶在我们面前&#xff0c;那我们最关心的做青和焙火两个问题&#xff0c;有什么影响呢&#xff1f;它们之间既有因果关…

【安卓开发 】Android初级开发(四)ListView

ListView的实现步骤 1.单独一行的布局可以如下 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:orientation"horizontal"android:layout_width&…

不能装载文档控件。请在检查浏览器的选项中检查浏览器的安全设置_【网络安全宣传周】网络安全小黑板 | 如何正确设置浏览器...

李夏是一个公司的职员&#xff0c;一天晚上加班赶制文档&#xff0c;由于要向客户汇报产品情况&#xff0c;需要获取大量网上信息&#xff0c;然而在制作中却发现浏览器的网页打不开了。第二天原计划向客户展示的材料未能完整汇总&#xff0c;客户见面对接效果也打了折扣。在当…

vs 不能自动 析构函数_深入理解C++虚函数的override、overload与hide以及虚析构函数...

今天主要讲的是虚函数的override与overload的区别。首先我们来看一段代码&#xff1a;示例代码#include <stdio.h>#include <string>#include <iostream>#include <complex>using namespace std;class Father{public: Father(); ~Father(); virtual vo…

tampermonkey怎么不能用了_普洱茶发霉了怎么办?能不能用太阳晒

大家都知道普洱茶要储藏在通风干燥的地方&#xff0c;如果储存不恰当就可能变质发霉。而且普洱茶很容易吸味&#xff0c;需要存放到干净的环境并避免日晒。当发现茶叶发霉的现象比较严重时&#xff0c;需要直接扔掉。如果不严重&#xff0c;可以采用以下方法&#xff1a;千万不…

vue 动态变量名_【告别复制粘贴】动态模板生成小技巧

? 这是第 75篇不掺水的原创&#xff0c;想要了解更多&#xff0c;请戳上方蓝色字体&#xff1a;政采云前端团队关注我们吧&#xff5e;本文首发于政采云前端团队博客&#xff1a;告别复制粘贴&#xff1a;动态模板生成小技巧https://www.zoo.team/article/dynamic-template-ge…

jboss项目导入idea_如何导入任何JBoss BRMS示例项目

jboss项目导入idea在过去几周内&#xff0c;JBoss BRMS演示的用户反复询问我以下内容时&#xff0c;会给您这些提示和技巧&#xff1a; “如何将与各种JBoss BRMS演示项目相关的项目导入到我自己的现有安装中&#xff1f;” 这意味着用户希望在个人安装产品时有一个示例项目&…

amos看拟合度在哪里看_哪里可以看亲爱的热爱的电视剧全集

由杨紫、李现、胡一天、张格出演的暖心甜宠剧《亲爱的&#xff0c;热爱的》正在热播中。该剧根据墨宝非宝小说《蜜汁炖鱿鱼》改编&#xff0c;讲述了一场高智商与高情商的甜萌梦幻爱情故事。剧中李现饰演的高冷G神和杨紫饰演的萌妹学霸&#xff0c;从开头的一见钟情到后面的相处…