原理
为了解决标记清除算法的效率问题,一种称为“复制”(Copying)的收集算法出现了,它将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。这样使得每次都是对其中的一块进行内存回收,内存分配时也就不用考虑内存碎片等复杂情况,只要移动堆顶指针,按顺序分配内存即可,实现简单,运行高效。
缺点
同时只有一半的内存被使用(根据实际情况可以采用非1:1的比例划分,如HotSpot的新生代8:1:1)
复制算法执行过程如下图:
一分钟带你了解:垃圾回收的复制算法
--------------------------------------------分割线---------------------------------------------------------

以上知识均来源于该书籍,有钱的小伙伴可以去购买正版书籍支持一下。
提取码:123456
《深入理解Java虚拟机JVM高级特性与最佳实践(周志明)》
https://306t.com/file/28095605-451122608

相关文章:

  • 2021-11-14
  • 2021-12-29
  • 2021-10-30
  • 2022-01-09
  • 2021-12-16
  • 2021-10-04
  • 2022-01-06
猜你喜欢
  • 2021-08-28
  • 2021-08-25
  • 2022-01-02
  • 2022-01-05
  • 2021-04-19
  • 2021-05-17
  • 2022-12-23
相关资源
相似解决方案