
垃圾回收
文章平均质量分 85
忠哥哥1号
这个作者很懒,什么都没留下…
展开
-
JVM 内存分配策略
JVM 内存分配策略概况详细说明对象优先在Eden区分配大对象直接进入老年代长期存活的对象将进入老年区概况所谓自动内存管理,最终要解决的就是内存分配和内存回收两个问题。内存回收即时垃圾回收机制。本文主要介绍内存分配内存分配通常在java堆上分配(随着虚拟机优化技术的诞生,某些场景也会在栈上分配),对象主要分配在新生代的Eden区,如果开启了本地线程缓冲,将会按照线程优先在TLAB 上分配,少数情况也会在老年代上分配,总的来说分配规则不是百分之百固定的,其细节取决于哪一种垃圾回收器组合以及虚拟机相关参数原创 2022-04-05 14:51:30 · 20249 阅读 · 0 评论 -
JVM垃圾回收器
JVM垃圾回收器垃圾回收器分类说明垃圾回收器工作原理垃圾回收器分类说明如果说垃圾回收算法是内存回收的方法论,那么垃圾回收器就是内存回收的具体实现,下图展示了7中作用于不同分代的收集器。其中用于新生代的回收器包括Serial,PraNew,Parallel Scavenge,回收老年代的收集器包括 Serial Old ,Parallel old,CMS,还有作用于回收整个java堆的G1收集器,不同收集器之间的连线表示他们可以搭配使用。Serial收集器(复制算法):新生代单线程收集器,标记和清理原创 2022-04-04 16:51:34 · 20028 阅读 · 0 评论 -
【JVM垃圾回收算法】
JVM垃圾回收算法垃圾回收算法分类算法详情标记-清除算法复制算法标记-整理算法分代算法年轻代老年代垃圾回收算法分类标记-清除算法:标记无用对象,然后进行清除回收,缺点:效率不高,无法清理垃圾碎片复制算法:按照容量划分两个相等大小的内存区域,当一块用完的时候将活着的对象复制到另一块上,然后再把已使用的内存空间一次性清理掉。缺点:内存使用率不高,只有原来的一半。标记-整理算法:标记无用对象,让所有存活的对象向一端移动,然后直接清除掉端边界之外的内存。分代算法:根据对象存活周期的不同将内存划分为几块,原创 2022-04-03 18:29:01 · 21096 阅读 · 0 评论