Java對象定位
時間 2021-08-15
標籤
JVM
java
1. 對象定位方式
- 句柄池
- 直接指針
2. 句柄池 vs. 直接指針
句柄池
- 不管堆中的實例對象地址是否改變,是否被垃圾回收,棧中的引用是不會發生改變的,改變的是堆中句柄池所保存的內存地址,則棧中的reference不需要被修改
- GC效率比較高
直接指針
- 引用直接指向堆內存中的對象地址,相比使用句柄,減少了一次尋址過程,減少了一次性能開銷,由於對象的訪問定位頻率非常高,節約了性能,速度快。
3. 總結
二者沒有優劣之分,Hotspot使用的是直接指針