JVM的学习3_____逃逸分析与栈上分配

      之前有提到过,为了提高GC的回收效率,对象实例的内存分配不一定必须存在于堆区中,还可采用堆外分配。而最常见的堆外分配就是采用逃逸分析筛选出未发生逃逸的对象,在栈帧中分配内存空间。

       逃逸分析:就是分析出对象的作用域。当一个对象在方法体内声明后,该对象的引用被其他外部所引用时该对象就发生了逃逸,反之就会在栈帧中为对象分配内存空间。

       根据逃逸分析在栈帧中分配的对象内存,不会使用GC进行垃圾回收。因为栈会随着方法的开始而创建,结束而销毁。

猜你喜欢

转载自www.cnblogs.com/xbfchder/p/11397337.html