JVM运行时数据区——字符串常量池位置的调整

在JDK6及之前,使用永久代来实现方法区,字符串常量池(StringTable)是在永久代(方法区)中的,但是方法区的回收效率不高,在Full GC时才会回收。

在JDK7中,将字符串常量池转移到了堆中,分配在年轻代和老年代中。

在JDK8中,为了融合HotSpot VM与JRockit VM而做出努力 ,因为JRcockit VM不需要永久代 ,所以移除了永久代,改为了元空间,在本地内存中。

注意:在JDK1.8中,字符串常量池独立于新生代和老年代,有一块独立的区域。

相关推荐
woai336418 分钟前
学习JVM-基础篇-类加载器&双亲委派机制
jvm
2301_8145902544 分钟前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python
wertyuytrewm2 小时前
Java面试——Java基础
java·jvm·面试
czlczl200209252 小时前
RAG实现思路流程
java·jvm
愤豆4 小时前
11-Java语言核心-JVM原理-JVM调优详解
java·jvm·测试工具
2401_878530214 小时前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
庞轩px5 小时前
模拟面试回答第十四问:双亲委派模型
jvm·面试·职场和发展·tomcat·类加载·类加载器·双亲委派模型
金斗潼关6 小时前
java反序列化入口方法介绍
java·开发语言·jvm·序列化·反序列化
gelald7 小时前
JVM - 垃圾回收
java·jvm·后端
愤豆7 小时前
10-Java语言核心-JVM原理--字节码与执行引擎详解
java·jvm·python