网站首页 > 精选教程 正文
从JDK1.6到1.8, 运行时内存分配简图分别如下:
在JDK1.7中的HotSpot中,已经把原本放在方法区的字符串常量池移出。
从JDK7开始永久代的移除工作,贮存在永久代的一部分数据已经转移到了Java Heap或者是Native Heap。但永久代仍然存在于JDK7,并没有完全的移除:符号引用(Symbols)转移到了native heap;字面量(interned strings)转移到了java heap;类的静态变量(class statics)转移到了java heap。
随着JDK8的到来:
JVM不再有PermGen。但类的元数据信息(metadata)还在,只不过不再是存储在连续的堆空间上,而是移动到叫做“Metaspace”的本地内存(Native memory)中。
一、java7到java8的第一部分变化:元空间
下面来一张图看一下java7到8的内存模型吧(这个是在网上找的图,如有侵权问题请联系我删除。)
二、java7到java8的第二部分变化:运行时常量池
运行时常量池(Runtime Constant Pool)的所处区域一直在不断的变化,在java6时它是方法区的一部分;1.7又把他放到了堆内存中;1.8之后出现了元空间,它又回到了方法区。
Metaspace 结构是怎么样的?
参考:https://blog.csdn.net/weixin_42711325/article/details/86533192
感谢您的阅读,本文由 王欣的博客 版权所有。如若转载,请注明出处:王欣的博客(https://wangxin.io/2019/10/31/jvm/jvm_memory_change_history/)
猜你喜欢
- 2024-12-18 java-socket长连接demo体验 java websocket 长连接
- 2024-12-18 个人珍藏的80道多线程并发面试题 多线程使用场景面试
- 2024-12-18 这才是Java基础知识点的总结 这才是java基础知识点的总结怎么写
- 2024-12-18 JDK安装、Eclipse安装及运行环境配置
- 2024-12-18 甲骨文:Java始终与Windows XP不离不弃
- 2024-12-18 JVM调优基础05:Java对象的内存布局
- 2024-12-18 Java 7章 练习 java第七章课后答案
- 2024-12-18 一份详细介绍JVM的资料(对比JDK8和JDK7)
- 2024-12-18 资深的程序员都是这样排查Java问题的,附工具单
- 2024-12-18 二 JAVA语言基础之 基本数据类型 java语言基本数据类型有哪些
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)