当前位置: 首页 > news >正文

文学网站做编辑图片博客 wordpress

文学网站做编辑,图片博客 wordpress,爱前端wordpress5.0.3主题,秦皇岛是属于哪个省的城市系列文章目录 【JVM系列】第一章 运行时数据区 【面试】第二章 从JDK7 到 JDK8, JVM为啥用元空间替换永久代#xff1f; 大家好#xff0c;我是青花。拥有多项发明专利#xff08;都是关于商品、广告等推荐产品#xff09;。对广告、Web全栈以及Java生态微服务拥有自己独到…系列文章目录 【JVM系列】第一章 运行时数据区 【面试】第二章 从JDK7 到 JDK8, JVM为啥用元空间替换永久代 大家好我是青花。拥有多项发明专利都是关于商品、广告等推荐产品。对广告、Web全栈以及Java生态微服务拥有自己独到的见解。曾经辅导过若干个计算机专业的学生进入到软件开发行业就业。希望和大家一起成长进步。 今天给大家带来的文章从JDK7 到 JDK8, JVM为啥用元空间替换永久代希望对同学们有所帮助。 文章目录 系列文章目录一、JVM 的内存模型组成部分1.1、方法区1.2、JDK不同版本的内存模型以及永久代1.2.1、JDK1.61.2.2、JDK1.71.2.3、JDK1.8 二、从永久代、元空间内存分配对比三、Oracle 关于Java虚拟机的规划四、归纳汇总4.1、内存控制问题4.2、gc问题4.3、Oracle的规划 总结 Java 面试专栏 JVM区域 从JDK7 到 JDK8, JVM为啥用元空间替换永久代 从永久代、元空间内存分配对比 从gc方面对比 Oracle的虚拟机改造 一、JVM 的内存模型组成部分 JVM 的内存模型主要包括程序计数器Program Counter Register、虚拟机栈VM Stack、本地方法栈Native Method Stack、堆Heap和方法区Method Area。 1.1、方法区 方法区Method Area是所有线程共享的内存区域用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。     方法区只是 JVM 规范中定义的一个概念针对 Hotspot 虚拟机Java8 之前使用永久代Permanent Generation简称 PermGen实现而 Java8 之后使用元空间Metaspace实现。 类的元数据信息 包括类的名称、访问标志、父类、接口、字段、方法等信息。 运行时常量池 在Java代码中常量可以被直接定义在类或接口中这些常量在编译后被存储在Class文件的常量池中而运行时常量池则是从Class文件中加载的。 静态变量和常量 类的静态变量和常量都存储在方法区中它们在类加载的时候被初始化并分配内存空间。 方法字节码 在Java中方法的字节码被编译成Class文件并存储在方法区中。 即时编译器 为了提高程序的执行效率JIT会将热点代码编译成本地机器码并存储在方法区中。 1.2、JDK不同版本的内存模型以及永久代 1.2.1、JDK1.6 1.2.2、JDK1.7 1.2.3、JDK1.8 二、从永久代、元空间内存分配对比 在JDK6/7 Hotspot虚拟机中方法区的实现是在永久代里面它里面主要存储运行时常量池、class类元信息等。     永久代属于JVM运行时内存中的一块存储空间我们可以用过 -XX:PermSize来设置永久代的大小。     当内存不够的时候会触发垃圾回收。     在JDK8 Hotspot虚拟机中取消了永久代由元空间来实现方法区的数据存储。元空间不属于JVM内存而是直接使用本地内存因此不需要考虑GC问题。      默认情况下元空间是可以无限制的使用本地内存的但是我们也可以使用JVM参数来限制内存使用大小。 三、Oracle 关于Java虚拟机的规划 在Java 8之后Oracle决定将HotSpot和JRockit两个虚拟机JVM合并。HotSpot是Oracle的默认JVM也是Java社区中最常用的而JRockit是一个由瑞典公司做的高性能JVM特别适合于对性能要求较高的环境。 合并这两个虚拟机是为了集中两者的优势并为Java用户提供一个更强大、更统一的平台。在JDK 9及以后的版本中JRockit的一些特性如垃圾收集和内存管理已经被引入到HotSpot中。 至于“永久代PermGen”这是Java 7及以前版本中的一种内存区域用于存储类的元数据。在Java 8及以后的版本中永久代已经被移除取而代之的是元空间Metaspace这是一个不受内存限制的区域。所以如果你正在使用的是Java 8或更高版本你不会再看到“永久代”这个概念。 四、归纳汇总 4.1、内存控制问题 在JDK1.7版本里面永久代内存是有上限的虽然我们可以通过参数来设置但是JVM加载的class总数、大小是很难确定的综上所述会很容易出现OOM问题。 4.2、gc问题 永久代的对象是通过FullGC进行垃圾收集也就是和老年代同时实现垃圾收集。替换成元空间以后简化了Full GC可以在不进行暂停的情况下并发地释放类数据同时也提升了GC的性能。 4.3、Oracle的规划 Oracle将HotSpot和JRockit两个虚拟机JVM合并而JRockit没有永久代。 总结 本文章从内存控制、gc以及Oracle对于JVM的规划三方面入手阐述了为何在JDK8, JVM为啥用元空间替换永久代。通过本文的分析我们也可以看到JVM的不断升级给开发者带来了很多便利也使得Java应用的性能越来越稳定不管是内存控制还是gc性能都比以前得到了很大的提升。
http://www.huolong8.cn/news/180951/

相关文章:

  • 网站开发与app差距张家界seo排名
  • 湖州网站优化教育行业网站设计
  • 游戏网站上做银商为网站人员网页设计首页怎么设计
  • 苏州专业做网站较好的公司有哪些成都网站建设 培训班
  • 电子商务网站建设视频教程物价局网站建设情况汇报
  • 建设信用卡登录中心网站优化神马排名软件
  • 怎样去同行网站做外连接室内设计培训班排行榜学校
  • 郑州网站维护推广网站开发平台开发
  • 做电影下载网站需要什么软件wordpress is电影主题
  • 企业网站建设学习新手学做网站vs
  • 关键词网站排名软件网站建设设计设计公司
  • 代练平台宁波网站推广优化联系电话
  • 免费的静态网站托管网站后台建设软件
  • 德宏芒市建设局网站有自己的网站如何做淘宝客
  • 三亚做网站服务从事广告设计需要学什么
  • 免费创建个人商城网站吗河南省干部任免最新公示
  • 鞍山网站制作小程序wordpress函数文件夹
  • 手机企业网站设计理念ui设计去什么公司好
  • 3d模型免费素材网站石家庄网站app开发
  • 网站标题优化可以含几个关键词河南做网站公司哪家好
  • 网站后台管理系统进不去怎么办如何做logo模板下载网站
  • 怎么给自己的网站更换域名石家庄营销策划公司排名
  • 桂林住房城乡建设厅网站潍坊网站建设 APP开发小程序
  • 猪八戒网网站开发需求wordpress调二级分类目录
  • 国内四大门户网站免费建站的网站
  • 要看网站是多少小程序开发案例
  • 新手怎么学做网站wordpress代码分割
  • 苏州网站建设优化公司学校网站建设 应用情况
  • 青岛网站关键词成都科盛兴网站建设有限公司
  • 网站建设 中企动力南昌0792百度网站怎么做信息