JVM之垃圾收集器回收种类


目录

  1. 面试常见问题
  2. 串行并行并发G1四大垃圾回收方式
  3. 如何查看默认的垃圾收集器
  4. JVM默认的垃圾收集器有哪些
  5. GC之7大垃圾收集器详解

1. 面试常见问题


  1. GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈
  2. 怎么查看服务器默认的垃圾收集器是那个?生产上如何配置圾收集器的?谈谈你对垃圾收集器的理解?
  3. G1垃圾收集器

1. GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈

GC算法(引用计数/复制/标清/标整)是内存回收的方法论,垃圾收集器就是算法落地实现。
因为目前为止还没有完美的收集器出现,更加没有万能的收集器,只能针对具体应用最合适的收集器,进行分代收集

问题2,3后面慢慢详解


2. 串行并行并发G1四大垃圾回收方式


  1. 串行垃圾回收器(Serial):它为单线程环境设计且只使用一个线程进行垃圾回收,会暂停所有的用户线程。所以不适合服务器环境

  2. 并行垃圾回收器(Parallel):多个垃圾收集线程并行工作,此时用户线程是暂停的,使用于科学计算/大数据处理首台处理等弱交互场景

  3. 并发垃圾回收器(CMS[ConcMarkSweep]):用户线程和垃圾收集线程同时执行(不一定并行,可能交替执行),不需要停顿用户线程,互联网公司多用它,适用对停顿时间有要求的场景

  4. G1垃圾收集器:G1垃圾回收器将堆内存分割成不同的区域然后并发的对其进行垃圾回收

图解:


3. 如何查看默认的垃圾收集器


  1. 查看默认的垃圾收集器,JVM参数:
    java -XX:+PrintCommandLineFlags -version

4. JVM默认的垃圾收集器有哪些


  1. java的gc回收的类型主要有六种,看源码可以清楚知道:UseSerialGC, UseParallelGC, UseParNewGC, UseConcMarkSweepGC, UseParallelOldGC, UseG1GC。

5. GC之7大垃圾收集器详解

篇幅限制,请看另一篇博客详解:GC之7大垃圾收集器详解

JVM之垃圾收集器回收种类相关推荐

  1. 垃圾收集器回收种类 以及七种垃圾收集器

    垃圾收集器回收种类 垃圾收集器是垃圾回收算法的具体实现 串行垃圾回收器(Serial) 它为单线程环境设计且只使用一个线程进行垃圾回收,会暂停用户线程 (并行垃圾回收器)Parallel 多个垃圾收集 ...

  2. Android中JVM七大垃圾收集器【解析】

    概述 GC垃圾收集器的种类 新生代:年轻代用来存放最近创建的对象 老年代:主要存放应用程序中生命周期长的内存对象 永久代:内存的永久保存区域(类和元数据),GC不参与回收 Serial收集器:串行收集 ...

  3. JVM常用垃圾收集器

    前言 在上一篇,我们谈到了JVM中的常用垃圾回收算法,并了解了JVM中针对堆区中不同的分代采用不同的垃圾回收算法 在了解了垃圾回收算法之后,很多伙伴不禁在想,既然是分代垃圾回收,自然新生代和老年代的垃 ...

  4. JVM(四)--垃圾收集器

    JVM(四)–垃圾收集器 这篇博客的内容包括: 一.垃圾收集器: 1,Serial 收集器: 2,ParNew 收集器: 3, Parallel Scavenge 收集器: 4,Serial Old收 ...

  5. 对象不可达,一定会被垃圾收集器回收么?

    即使不可达,对象也不一定会被垃圾收集器回收,1)先判断对象是否有必要执行 finalize()方法,对象必须重写 finalize()方法且没有被运行过.2)若有必要执行,会把对象放到一个队列中,JV ...

  6. 深入理解JVM - ZGC垃圾收集器

    如果下面的一些概念有些不清楚的可以先看深入理解JVM - 垃圾收集器和深入理解JVM - Shenandoah垃圾收集器. ZGC(Z Garbage Collector)是一款由Oracle公司研发 ...

  7. jvm(3)-垃圾收集器与内存分配策略

    [0]README 0.1)本文部分文字转自:深入理解jvm,旨在学习 垃圾收集器与内存分配策略 的基础知识: [1]垃圾回收概述 1)GC(Garbage Collection)需要完成的3件事情: ...

  8. JVM优化系列-JVM G1 垃圾收集器

    导语   G1回收器是在JDK1.7中正式使用的一种全新的垃圾回收器,它的目标是为了取代CMS回收器.G1回收器拥有独特的垃圾回收策略,和之前的任意的一种垃圾回收器都有所不同,但是从分代策略上来说依然 ...

  9. JVM常见垃圾收集器

    (1) 串行收集器 Serial:Serial.Serial Old -XX:+UseSerialGC -XX:+UseSerialOldGC (2) 并行收集器 Parallel:Parallel ...

最新文章

  1. SQL优化--inner、left join替换in、not in、except
  2. jq 控制td只显示一行_9月22日现货黄金、白银TD、黄金TD、纸黄金、纸白银价格走势分析...
  3. NUMBER_GET_NEXT 获取编号年度问题
  4. RRT,RRT*,A*,Dijkstra,PRM算法
  5. 经典论文复现 | 基于深度学习的图像超分辨率重建
  6. Cloud for Customer的第一个显示的work center是怎么加载和渲染的
  7. 黑盒攻击的分类_「图像分类」图像分类中的对抗攻击是怎么回事?
  8. createdroptargets_使用DUILIB建立项目
  9. 华为哪款手表支持鸿蒙,华为Watch 3最早或于5月发布 采用鸿蒙系统并支持eSIM
  10. 10.iterm 2 install rz , sz
  11. One Web MKey
  12. 魔兽世界服务器文件,【魔兽世界7.35】魔兽一键安装服务端[带GM管理工具]
  13. 使用教育邮箱享正版Jetbrains 套件,IDEA正版webstrom正版
  14. idea git 各种颜色代表的含义
  15. 应用回归分析(知识点整理)(四)——SPSS处理自相关(序列相关)
  16. 问题 E: 天宝便利店
  17. 极品冷幽默,搞笑没得说
  18. 数据的基本类型有哪些
  19. JVM内存模型JVM内存模型
  20. dashu java_Java中的大数

热门文章

  1. php开启curl扩展
  2. 为@RequestMapping标注的方法扩展其传入参数
  3. 翻身做主--给自己的软件制作注册码
  4. 树形DP求树的最小支配集,最小点覆盖,最大独立集
  5. HDU - 5820 Lights(主席树)
  6. 洛谷 - P3356 火星探险问题(最大费用最大流+拆点+路径打印)
  7. 引用wx.getclipboarddata中的内容_教材、图书在引用时要注意哪些方面
  8. linux npm环境变量,linux配置npm环境变量
  9. c语言hash存储,C语言实现HashTable(一) 介绍
  10. Logistic回归与牛顿迭代法