JVM中对象访问定位两种方式


1.通过句柄方式访问,

  在Java堆中分出一块内存进行存储句柄池,这样的话,在栈中存储的是句柄的地址

优点:

  当对象移动的时候(垃圾回收的时候移动很普遍),这样值需要改变句柄中的指针,但是栈中的指针不需要变化,因为栈中存储的是句柄的地址

缺点:

  需要进行二次定位,寻找两次指针,开销相对于更大一些

2.直接指针访问方式

  Java栈直接与对象进行访问,在Java堆中对象帆布中必须考虑存储访问类型的数据的相关信息,因为没有了句柄了

优点:

  速度快,不需要和句柄一样指针定位的开销


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM