天天看点

JVM学习之对象创建

对象创建jvm中分配内存有两种策略,

1、指针碰撞;

基于内存空间连续

2、空闲列表

内存空间不连续

(基于gc回收策略,如果gc有压缩内存空间的策略就是用1,否则2)

线程安全性问题:

高并发的时候就有线程安全问题

在高并发的环境下可能会同一个时间会请求建立多个对象。

解决方案:

1、synchronized代码块,让创建对象一个一个的执行。(效率低)

2、本地线程分配缓冲TLAB,每个线程在对内存中分配一快空间,进行创建对象

初始化对象

执行构造方法(实际是调用初始化方法)

后续补充完善!

继续阅读