Serial回收器

1.Serial收集器是最基本、历史最悠久的垃圾收集器了。JDK1.3之前是新生代的唯一选择。

2.Serial收集器作为HotSpot中Client模式下的默认新生代垃圾收集器。

3.Serial收集器采用了复制算法、串行回收和“Stop-The-World"机制的方式执行内存回收。

4.除了年轻代之外,Serial收集器还提供用于执行老年代垃圾收集的Serial Old收集器。Serial Old收集器同样采用了串行回收和“Stop-The-World"机制,只不过内存回收算法使用的是标记-压缩算法。(Serial Old是运行在Client模式下默认的老年代的垃圾回收器。Serial Old在Server模式下主要有两个用途:1.与新生代的Parallel Scavenge配合使用 。2.作为老年代CMS收集器的后备垃圾收集方案。)

Serial回收器的工作过程

如下图所示:

这个收集器是一个单线程的收集器,但它的”单线程“的意义并不仅仅说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是它进行垃圾收集时,必须暂停其他所有的工作线程,直到它收集结束。

优势:

1.简单而高效

2.在用户的桌面应用场景中,可用内存一般不大,可以在较短时间内完成垃圾收集,只要不频繁发生,使用串行回收器是可以接受的。

3.在HotSpot虚拟机中,使用-XX:+UseSerialGC参数可以指定年轻代和老年代都使用串行收集器。

总结:

这种垃圾收集器仅做了解,目前已经不再用串行的了。而且在限定单核CPU才可以用。现在都不是单核了。对于交互较强的应用而言,这种垃圾收集器是不能被接受的。一般在Java web应用程序中是不会采用串行垃圾收集器的。

Serial收集器介绍相关推荐

  1. 27.垃圾收集器(Serial收集器、ParNew收集器、Parallel收集器、Parallel Old 收集器、CMS收集器、G1收集器、常用的收集器组合)

    27.垃圾收集器 27.1.Serial收集器 27.2.ParNew收集器 27.3.Parallel收集器 27.4.Parallel Old 收集器 27.5.CMS收集器 27.6.G1收集器 ...

  2. 【Android 内存优化】垃圾回收算法 ( 分代收集算法 | Serial 收集器 | ParNew 收集器 | Parallel Scavenge 收集器 | CMS 并发标记清除收集器 )

    文章目录 一. 分代收集算法 二. 垃圾回收器 / 收集器 ( GC ) 三. 串行收集器 ( Serial ) 四. ParNew 收集器 五. Parallel Scavenge 收集器 六. C ...

  3. Shenandoah收集器和ZGC收集器的简单介绍

    3.6 低延迟垃圾收集器 衡量垃圾收集器的三项最重要的指标是:内存占用(Footprint).吞吐量(Throughput)和延迟(Latency),三者共同构成了一个"不可能三角" ...

  4. Serial,Parallel,CMS,G1四大GC收集器特点小结

    2019独角兽企业重金招聘Python工程师标准>>> 1.Serial收集器 一个单线程的收集器,在进行垃圾收集时候,必须暂停其他所有的工作线程直到它收集结束. 特点:CPU利用率 ...

  5. Serial Old收集器

    Serial Old收集器是Serial收集器的老年代版本,也是一个单线程收集器,不同的是采用"标记-整理算法",运行过程和Serial收集器一样.

  6. Serial Old收集器和Parallel Old收集器

    Serial Old收集器 Serial Old是 Serial收集器的老年代版本: 1.特点 针对老年代: 采用"标记-整理"算法(还有压缩,Mark-Sweep-Compact ...

  7. JVM---垃圾收集器(万字详解)

    垃圾收集器万字详解 垃圾回收器 垃圾收集器万字详解 前言 垃圾收集器说明与发展史 垃圾收集器简要说明 垃圾收集器发展史 垃圾收集器的分类 衡量垃圾收集器性能的指标 不同的垃圾收集器概述 7款经典的垃圾 ...

  8. JVM性能调优实践:G1 垃圾收集器介绍篇

    前言 前面两篇主要整理了性能测试的主要观察指标信息:性能测试篇,以及JVM性能调优的工具:JVM篇.这一篇先简单总结一下GC的种类,然后侧重总结下G1(Garbage-First)垃圾收集器的分代,结 ...

  9. ZGC收集器(学习笔记)

    ZGC收集器 一款在 JDK 11中新加入的具有实验性质的低延迟垃圾收集器 ZGC的目标是希望在尽可能对吞吐量影响不太大的前提下,实现在任意堆内存大小下都可以把垃圾收集的停顿时间限制在十毫秒以内的低延 ...

最新文章

  1. p2020开发_2020年最佳开发者社区
  2. python 的作用
  3. jq之div hide slow
  4. 两位小数乘两位小数竖式_冀教版五年级数学上册2.4小数乘小数微课视频 | 练习...
  5. Mybatis_day4_Mybatis的延迟加载
  6. windowoPhone7.1 Socket编程-实现手机与电脑通信
  7. 美国街头出现怪异无人车:3个激光雷达垂直叠放
  8. idea中spark项目Scala语言读取properties文件
  9. 本地连接远程代码库——生成公钥SSH Key(Linux版)
  10. [转载] Python: fnmatch模块 (Unix B-Shell通配符的文件名匹配)
  11. freeswitch 用户配置详解_FreeSwitch配置和使用手册
  12. (附源码)计算机毕业设计ssm大学生学科竞赛管理系统
  13. 2021-01-28
  14. 训练深度学习模型时电脑自动重启
  15. 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合
  16. 工业交换机与普通交换机区别
  17. 华为出击,智能汽车大蝶变
  18. [electron]Electron安装报错connect ETIMEDOUT
  19. Spring Batch 配置重试逻辑
  20. Android开屏视频广告

热门文章

  1. 【最佳实践】瀚高数据库安全版v4.5.8安装
  2. c++assert函数
  3. CF987C Three displays 题解
  4. Java项目:在线健身房管理系统(java+SpringBoot+JSP+HTML+maven+mysql)
  5. NEC≠NEC=NFPA 70
  6. 2022年下半年软件设计师下午试题
  7. vbs整人代码蓝屏_愚人节必备,教你制作整人神器,用代码实现计算机蓝屏
  8. NOSQL,MongoDB的操作和索引
  9. esnp的静态和动态nat
  10. async和awit使用