1. 程式人生 > >十、逃逸分析和棧上分配

十、逃逸分析和棧上分配

生命周期 效率 內存空間 什麽 周期 div 內存 分析 堆區

Java堆區已經不再是對象實例分配的唯一空間,可以在堆區之外分配內存以提升效率降低頻率,逃逸分析即是如此。

什麽是逃逸分析?

例如:

一個成員方法的內部實例化了一個對象,如果這個對象被方法外的引用指向了,那麽就發生了逃逸現象。JVM在內存分配的時候會分析其是否發生逃逸,如果未發生逃逸的,那麽就直接在棧上分配內存空間,其生命周期和線程相同。(也稱之為“棧上分配”)

十、逃逸分析和棧上分配