摘要:
继续接着上一次【https://www.cnblogs.com/webor2006/p/11129326.html】对G1进行理论化的学习,上一次学到了G1收集器的堆结构,回忆下: 接着继续对它进行了解: G1收集器堆结构: G1使用了gc停顿可预测的模型,来满足用户设定的gc停顿时间,根据用户设定 阅读全文
摘要:
接着上一次【https://www.cnblogs.com/webor2006/p/11123522.html】G1学习继续开启理论之旅。。 G1的设计规划是要替换掉CMS【理想化的】 G1在某些方面弥补了CMS的不足,比如,CMS使用的是mark-sweep算法,自然会产生内存碎片;然而G1基于c 阅读全文
摘要:
在之前已经详细对CMS垃圾回收器进行了学习,今天准备要学习另一个全新的垃圾收集器 G1(Garbage First Collector 垃圾优先的收集器),说是一种全新的,其实G1垃圾收集器已经出现了N多年了,只是从发展到成熟是需要经历一定的过程,oracle官方计划在jdk9中将G1变成默认的垃圾 阅读全文
摘要:
CMS收集器收集步骤: 在上一次【https://www.cnblogs.com/webor2006/p/11055468.html】中已经对CMS的垃圾收集器有了一定的理论上的了解,其中提到了CMS收集器完整的七个步骤,这一次则对每一个步骤进行一个详细了解,并会用程序来理解这七个步骤。 Phase 阅读全文
摘要:
上一次【https://www.cnblogs.com/webor2006/p/11048407.html】对安全点和安全区进行了理论化的了解,接下来继续对CMS进行其它理论的了解,还是纯理论!!坚持,因为下一次就会有实践代码了~~ CMS收集器 CMS(Concurrent Mark Sweep) 阅读全文
摘要:
对于之前GC垃圾收集器的学习回忆【https://www.cnblogs.com/webor2006/p/10982448.html】一下都有哪些垃圾收集器: 接下来则会对CMS这种超级复杂的一个垃圾回收器进行一个学习,相比serial收集器还是parallel收集器,CMS这种收集器无论是在处理的 阅读全文
摘要:
在上一次【https://www.cnblogs.com/webor2006/p/11031563.html】学习了一个新的JVM对象晋升到老年代的参数“MaxTenuringThreshold”,它的具体作用回忆一下: 简单来说就是用来控制哪些对象的年龄超过了这个最大值就会晋升到老年代,而对于对象 阅读全文
摘要:
今天会学习“MaxTenuringThreshold”这样一个新的JVM参数,编写的示例还是会基于上一次的代码,新建个类,如下: 接下来给它设置JVM的参数,具体如下: 而接下来会新增三个参数: 这个在之前已经使用过,只是木有配置到JVM参数中,回忆下: 其实就是打印出JVM的启动参数,接下来再添加 阅读全文
摘要:
在上一次【https://www.cnblogs.com/webor2006/p/10990736.html】中实验了一个从新生代到老年代竞升的情况,得出一个这样的结果,回忆下: 其实对于JVM来说,它提供了相应的一些参数来指定对象达到了多少的时候直接就可以在老年代分配而不是在新生代来分配,新生代是 阅读全文
摘要:
在上一节【https://www.cnblogs.com/webor2006/p/10989175.html】中已经开启GC的第一次实践,这次继续其于上一次的例子进行扩展来阐述一些其它的知识,先回顾一下上一节的代码: 其中GC参数我们配置如下: 其中对于试验代码中为啥要选用字节数组来实验其实是有原因 阅读全文