HotSpot虚拟机对象的创建过程

1、文中讨论的对象限于普通Java对象,不包括数组和class对象。

2、内存的分配方式由Java堆是否规整来决定,而Java堆是否规整取决于垃圾收集器是否有压缩整理的功能。

3、还需要考虑:对象的创建是非常频繁的,存在并发问题。有两个解决方法:

(1)采用CAS配上失败重试的方式保证更新操作的原子性;

(2)把内存分配的动作按线程划分在不同的空间中进行,即每个线程在java堆中预先分配一小块内存,称为本地线程分配缓冲TLAB。

猜你喜欢

转载自www.cnblogs.com/orchidzjl/p/9078066.html