JDK8为什么要使用元空间取代永久代

参考答案

永久代是 HotSpot VM 对方法区的实现,JDK 8 将其移除的部分原因如下:

  • 类及方法的信息等比较难确定其大小,因此对于永久代的大小指定比较困难,太小容易出现永久代溢出,太大则容易导致老年代溢出。
  • 永久代会为 GC 带来不必要的复杂度,并且回收效率偏低。
  • HotSpot JRockit 进行整合,JRockit 是没有永久代的。

 

以上,是JVM面试题【JDK8为什么要使用元空间取代永久代】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧