jvm区域总体分两类,heap区和非heap区。heap区又分:

Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。

非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。

堆区:young  gen 区和old  也叫Tenured gen 区

非堆区也叫永久代在jdk8后改为元数据区,Permanent generation ,像方法区就是典型的代表:

常见的垃圾搜集器一共7种,3个young ,3个old ,一个横跨 young 和  old 区也就是G1:

新生代收集器:Serial(  采用复制算法),ParNew(复制算法)、Parallel Scavenge(采用复制算法)

老年代收集器:Serial Old(  采用"标记-整理"算法,还有压缩,Mark-Sweep-Compact)、Parallel Old( 采用"标记-整理"算法;)、CMS(    基于"标记-清除"算法(不进行压缩操作,产生内存碎片);

整堆收集器:G1;

================

1-3、Minor GC和Full GC的区别

(A)、Minor GC

又称新生代GC,指发生在新生代的垃圾收集动作;

因为Java对象大多是朝生夕灭,所以Minor GC非常频繁,一般回收速度也比较快;

(B)、Full GC

又称Major GC或老年代GC,指发生在老年代的GC;

出现Full GC经常会伴随至少一次的Minor GC(不是绝对,Parallel Sacvenge收集器就可以选择设置Major GC策略);

Major GC速度一般比Minor GC慢10倍以上;

其他:discuss

https://blog.csdn.net/clover_lily/article/details/80160726

最新文章

  1. iOS多线程实现3-GCD
  2. C语言初始化——bss段初始化、跃入C、C与汇编
  3. PyQT制作视频播放器
  4. 使用@Controller注解为什么要配置<mvc:annotation-driven />
  5. HD2058The sum problem
  6. 贪心算法(2)-Kruskal最小生成树
  7. JavaScript之数组对象
  8. GridView控件显示图片
  9. ios paper for facebook 使用第三方库
  10. Java 线程池的原理与实现(转)
  11. sqlalchemy 映射的小例子
  12. theOS环境搭建
  13. Json序列化、反序列化
  14. vue+vux页面滚动定位(支持上下滑动)
  15. Codeforces 1005 F - Berland and the Shortest Paths
  16. python-day39--mysql基本操作
  17. CDN高级技术专家周哲:深度剖析短视频分发过程中的用户体验优化技术点
  18. Flask 6 模板2
  19. java线程一之创建线程、线程池以及多线程运行时间统计
  20. element-ui多选框reserve-selection指定row-key保留数据更新之前的数据

热门文章

  1. 【python基础语法】第1天作业练习题
  2. 聊聊智能指针 auto_ptr、shared_ptr、weak_ptr和unique_ptr
  3. salt-minion启动报错No module named salt.scripts
  4. 【Spring】利用spring的JdbcTemplate查询返回结果映射到自定义类型
  5. jsp环境搭建
  6. PCI Express
  7. C语言实现链式二叉树静态创建,(先序遍历),(中序遍历),(后续遍历)
  8. mac屏幕录制
  9. bfs(队列模板)
  10. [JSOI2010]快递服务