《子曰》就是孔子说的富有哲理的话,你晓得伐?

子曰:“学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?”
曾子曰:“吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎?”
子曰:“温故而知新,可以为师矣。”
子曰:“学而不思则罔,思而不学则殆。”
子曰:“由,诲女知之乎!知之为知之,不知为不知,是知也。”
子曰:“见贤思齐焉,见不贤而内自省也。”
子曰:“三人行,必有我师焉。择其善者而从之,其不善者而改之。”
曾子曰:“士不可以不弘毅,任重而道远。仁以为己任,不亦重乎?死而后已,不亦远乎?”
子曰:“岁寒,然后知松柏之后凋也。”
子贡问曰:“有一言而可以终身行之者乎?”子曰:“其恕乎!己所不欲,勿施于人。”

GC话题早已成为老生常谈,但是其重要性不言而喻。

【课前回忆】温故而知新,可以为师矣。回忆是学习的重要组成部分!

对CMS GC如有遗忘,请先通过以下精彩博客回忆GC相关的知识。
https://blog.csdn.net/weixin_42257250/article/details/87800849
https://blog.csdn.net/iter_zc/article/details/41825395
https://www.cnblogs.com/syjkfind/archive/2016/06/17/5595452.html
https://www.cnblogs.com/kakaxisir/p/6209266.html
http://xstarcd.github.io/wiki/Java/JVM_GC.html
http://itindex.net/detail/47030-cms-gc-问题

http://www.cnblogs.com/zhangxiaoguang/p/5792468.html
你可以选择细细品味原汁原味的英文介绍,也可以快速浏览上述翻译版本。
https://plumbr.io/handbook/garbage-collection-algorithms-implementations#concurrent-mark-and-sweep
https://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html

【喂,GC日志会看吧】来,瞅瞅下面这段~

参考文章
https://blog.csdn.net/baiyan3212/article/details/81458697
https://www.cnblogs.com/onmyway20xx/p/6590603.html

2016-08-23T02:23:07.219-02001: 64.3222:[GC3(Allocation Failure4) 64.322: [ParNew5: 613404K->68068K6(613440K)7, 0.1020465 secs8] 10885349K->10880154K9(12514816K)10, 0.1021309 secs11][Times: user=0.78 sys=0.01, real=0.11 secs]12

2016-08-23T02:23:07.219-0200 – GC发生的时间;
64.322 – GC开始,相对JVM启动的相对时间,单位是秒;
GC – 区别MinorGC和FullGC的标识,这次代表的是MinorGC;
Allocation Failure – MinorGC的原因,在这个case里边,由于年轻代不满足申请的空间,因此触发了MinorGC;
ParNew – 收集器的名称,它预示了年轻代使用一个并行的 mark-copy stop-the-world 垃圾收集器;
613404K->68068K – 收集前后年轻代的使用情况;
(613440K) – 整个年轻代的容量;
0.1020465 secs – 这个解释用原滋原味的解释:Duration for the collection w/o final cleanup.
10885349K->10880154K – 收集前后整个堆的使用情况;
(12514816K) – 整个堆的容量;
0.1021309 secs – ParNew收集器标记和复制年轻代活着的对象所花费的时间(包括和老年代通信的开销、对象晋升到老年代时间、垃圾收集周期结束一些最后的清理对象等的花销);
[Times: user=0.78 sys=0.01, real=0.11 secs] – GC事件在不同维度的耗时,具体的用英文解释起来更加合理:
user – Total CPU time that was consumed by Garbage Collector threads during this collection
sys – Time spent in OS calls or waiting for system event
real – Clock time for which your application was stopped. With Parallel GC this number should be close to (user time + system time) divided by the number of threads used by the Garbage Collector. In this particular case 8 threads were used. Note that due to some activities not being parallelizable, it always exceeds the ratio by a certain amount.

【自我问答】吾日三省吾身

问:什么是GC?
答:

问:什么是GC Root?
答:

问:什么是CMS GC?
答:

问:CMS GC有几个步骤?有哪些是stop the world的?
答:

问:什么是promotion failed?
答:

问:什么是concurrent mode failure?
答:

【垃圾回收】喂,GC你晓得伐?相关推荐

  1. Java-JVM虚拟机内存垃圾回收机制gc入门:引用类型,对象标记算法,回收算法,常见的 garbage collector

    文章目录 GC的优缺点 引用的四种类型 对象标记算法 引用计数法 可达性分析法 回收算法 标记-清除算法(Mark-Sweep) 复制算法 标记-整理算法(Mark-Compact) 分代收集算法 常 ...

  2. JAVA之JVM垃圾回收(GC)机制详解

    一.为什么需要垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断的分配内存空间而不进行回收.除非内存无限大,我们可以任性的分配而不回收,但是事实并非如此.所以,垃圾回收是必须的. 二. ...

  3. Java垃圾回收(GC)机制详解

    Java垃圾回收(GC)机制详解 转自:https://www.cnblogs.com/xiaoxi/p/6486852.html 一.为什么需要垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因 ...

  4. C#垃圾回收机制(GC)

    GC的前世与今生 虽然本文是以.net作为目标来讲述GC,但是GC的概念并非才诞生不久.早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是 ...

  5. jvm gc垃圾回收机制和参数说明amp;amp;Java JVM 垃圾回收(GC 在什么时候,对什么东西,做了什么事情)

    jvm gc(垃圾回收机制) Java JVM  垃圾回收(GC 在什么时候,对什么东西,做了什么事情) 前言:(先大概了解一下整个过程) 作者:知乎用户 链接:https://www.zhihu.c ...

  6. 再论C++之垃圾回收(GC)

    再论C++之垃圾回收(GC) 使用智能指针(smart pointers) http://www.codeproject.com/cpp/garbage_collect.asp 原理:基于引用计数(r ...

  7. 垃圾回收机制GC知识再总结兼谈如何用好GC(转)

    作者:Jeff Wong  出处:http://jeffwongishandsome.cnblogs.com/  本文版权归作者和博客园共有,欢迎围观转载.转载时请您务必在文章明显位置给出原文链接,谢 ...

  8. JVM 垃圾回收(GC)

    前言 垃圾回收(GC)是由 Java 虚拟机(JVM)垃圾回收器提供的一种对内存回收的一种机制,它一般会在内存空闲或者内存占用过高的时候对那些没有任何引用的对象不定时地进行回收. 什么是垃圾回收机制 ...

  9. C#垃圾回收机制GC

    本章主要讲解以下C#的垃圾回收机制,之前也有文章提到: Effect C# 学习笔记 .Net资源管理_dmk17771552304的博客-CSDN博客 为什么要使用GC 提高了软件开发的抽象度 程序 ...

  10. JAVA垃圾回收机制GC之我姐是明星

    JAVA垃圾回收机制GC(Garbage Collection) 工作面试老伙伴之java垃圾回收机制 什么是GC,为什么要GC(我的明星老姐) 判断垃圾(找到不常穿的衣服) A 引用计数算法 B 可 ...

最新文章

  1. 毫米波雷达分类和技术方案
  2. 深度学习debug沉思录!
  3. R语言可视化包ggplot2包移除可视化图形的轴标签(刻度及其对应数值)实战(Remove Axis Labels)
  4. QTP自动化测试自学手册V2.0版本
  5. python弹幕代码_只需3 行代码就可以获取B站(弹幕、评论、用户)数据
  6. 第14条:理解“类对象”的用意
  7. centos7.9使用ssh命令进行登陆云服务器
  8. html修改details范围,HTML details 标签
  9. Elasticsearch实战:给博客打造全文检索
  10. Java企业面试算法新得体会之5字符串问题24问
  11. rtt面向对象oopc——3.对官方IO设备模型框架图的补充绘图
  12. Android 系统(167)----Glide加载圆角图片的方法
  13. sshd iptable 傻瓜配置
  14. 2022年最新版黑马程序员Java学习路线
  15. 笔记本电脑打开计算机里面会跳,笔记本电脑为什么闪屏_笔记本电脑闪屏的原因及处理方法...
  16. 全国计算机等级考点申请,全国计算机等级考试(NCRE)考点申请书某高校(367)
  17. C++通信录管理系统
  18. 安卓马赛克view_Android图形图像处理:马赛克(Mosaic)效果
  19. 【学习日记2023.4.25】之 前后端分离_前端工程化_Vue组件库Element_Vue路由_打包部署
  20. 训练SSD时,viz报错

热门文章

  1. cas52242-05-4/四硝基苯基卟啉钴/分子量984.15/齐岳生物促销款
  2. Linux输入/输出重定向
  3. 【第十七届智能车】智能车图像处理(4)-元素识别(三岔)
  4. 5、Hadoop搭建(分布式版本)
  5. html中行高是指字的高度嘛,CSS行高line-height的理解
  6. REST:JSPs only permit GET POST or HEAD
  7. 苹果加码 iOS 16 的限制:继 AirPlay 后不再支持通过 HDMI 适配器投屏 DRM 内容
  8. python爬虫的简介
  9. 国内支持远程工作的公司整理推荐
  10. Linux防火墙策略阻止漏扫