
JVM
忘我不好
这个作者很懒,什么都没留下…
展开
-
分代回收机制及垃圾回收算法
GC 分类 新生代回收(Minor GC/Young GC):指只是进行新生代的回收。 老年代回收(Major GC/OldGC):指只是进行老年代的回收。目前只有 CMS 垃圾回收器会有这个单独的回收老年代的行为。 (Major GC定义是比较混乱,有说指是老年代,有的说是做整个堆的收集,这个需要你根据别人的场景来定,没有固定的说法) 整堆回收(FullGC):收集整个 Java 堆和方法区(注意包含方法区) 垃圾回收算法 复制算法 将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当原创 2020-07-30 22:09:03 · 573 阅读 · 0 评论 -
JAVA对象的创建及内存分配详解
对象的创建 几乎所以对象都在JVM的堆中创建,通过类加载器加载进内存,并检查,然后分配内存,开始类的属性初始化赋值,设置对象头信息,通过构造方法创建对象 分配内存 主要通过指针碰撞和空闲列表方式,使用场景在于内存空间的规整程度,对于有标记整理的垃圾回收器(GC),一般用指针碰撞;没有则用空闲列表 为保证并发的安全性,就会有CAS机制和分配缓冲(TLAB),把内存分配的动作按照线程划分在不同的空间之中进行 内存空间初始化 保证了对象 的实例字段在 Java 代码中可以不赋初始值就直接使用,程序能访问原创 2020-07-29 22:36:36 · 1381 阅读 · 0 评论