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

廊坊 网站搞笑图片网站源码

廊坊 网站,搞笑图片网站源码,大学网页设计作业,谷歌网站推广3.JVM 运行时数据区 3.1.1 程序计数器(Program Counter Register) 是一块很小的内存空间,用来记录每个线程运行的指令位置,是线程私有的,每个线程都拥有一个程序计数器,生命周期与线程一致,是运行时数据区中唯一一个不…

3.JVM 运行时数据区

 

 3.1.1 程序计数器(Program Counter Register)

        是一块很小的内存空间,用来记录每个线程运行的指令位置,是线程私有的,每个线程都拥有一个程序计数器,生命周期与线程一致,是运行时数据区中唯一一个不会出现内存溢出的空间。运行速度最快。

3.1.2Java 虚拟机栈(Java Virtual Machine Stacks)

基本作用特征:

栈是运行单位,管理方法的调用运行,是用来运行java方法的区域。可能会出现栈溢出,是线程私有的。

运行原理:先进后出的结构,最顶部的称为当前栈帧。

栈帧结构:

一个栈帧包含:局部变量表(存储在方法中声明的变量),操作数栈(实际计算运行)

动态链接 void A(){  B();//B方法的地址  },方法返回地址。

3.1.3 本地方法栈(Native Method Stack)

  用来运行本地方法的区域,是线程私有,空间大小可以调整,可能会出现栈溢出。

3.1.4Java 堆(Java Heap)

       是Java虚拟机中内存最大的一块,是被所有线程共享的,在虚拟机启动时创建,java堆唯一的目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。

3.1.5 方法区(Methed Area)

用于存储已经被虚拟机加载的类信息,常量,静态变量,即时编译后的代码等数据。

方法区是很重要的系统资源,是硬盘和cpu之间的桥梁。

4.堆

4.1基本作用特征:

是存储空间,用来存储对象,是内存空间最大的一块儿区域,在jvm启动时就被创建,大小可以调整(jvm调优),本区域是存在垃圾回收的.是线程共享的区域。

4.2堆空间的分区:年轻代(新生区/新生代),伊甸园区(对象刚刚创建存储在此区域)

幸存者1区,幸存者2区,老年代(老年区)

 

4.3为什么要分区?

        可以根据对象的存活的时间放在不同的区域,可以区别对待。对不同的区域采用不同的垃圾回收算法,频繁回收年轻代,较少回收老年代。

4.4创建对象,在堆内存中分布

1.新创建的对象,都存储在伊甸园区。

2.当垃圾回收时。将伊甸园中垃圾对象直接销毁,将存活的对象,移动到幸存者1区。

3.之后创建的新对象还是存储在伊甸园区,再次垃圾回收到来时,将伊甸园中的存活对象移动到幸存者2区。同样将幸存者1区的存活对象移动到幸存者2区,每次保证一个幸存者区为空的,相互转换。

4.每次垃圾回收时,都会记录此对象经历的垃圾回收次数,当一个对象经历过15次回收,仍然存活,就会被移动到老年代。垃圾回收次数,在对象头中有一个4bit的空间记录,最大值只能是15。

5.老年区回收次数较少,当老年区内存空间不够用时,才会去回收老年代。

6.若老年区执行Major GC之后发现依然无法进行对象保存,就会产出OOM异常。

4.5堆空间的配置比例

默认的新生代与老年代的比例: 1:2 可以通过 -XX:NewRatio=2 进行设置

如果项目中生命周期长的对象较多,就可以把老年代设置更大.

在新生代中,伊甸园和两个幸存者区比例: 8:1:1

可以通过-XX:SurvivorRatio=8 进行设置

对象垃圾回收的年龄 -XX:MaxTenuringThreshold=<N>

4.6分代收集思想 Minor GC、Major GC、Full GC

JVM 在进行 GC 时,并非每次都新生区和老年区一起回收的,大部分时候回收的都是指新生区。针对 HotSpot VM 的实现,它里面的 GC 按照回收区域又分为两大类型:一种是部分收集,一种是整堆收集

部分收集:不是完整收集整个 java 堆的垃圾收集.其中又分为:

新生区收集(Minor GC/Yong GC):只是新生区(Eden,S0,S1)的垃圾收集。

老年区收集(Major GC / Old GC):只是老年区的垃圾收集。

整堆收集(Full GC):收集整个 java 堆和方法区的垃圾收集。

整堆收集出现的情况:

(1)System.gc();时

(2)老年区空间不足

(3)方法区空间不足

开发期间尽量避免整堆收集.

堆空间的参数设置

官方文档:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html

字符串常量池

       在jdk7之后,将字符串常量池的位置从方法区转移到了堆空间中,因为方法区的回收在整堆收集时发生,回收频率低,堆空间回收频率高。

http://www.yayakq.cn/news/272431/

相关文章:

  • 上海网站建设与设计怎样给公司产品做网站
  • 新手学做网站这本书阿里云 wordpress建站
  • 廊坊网站制作公司启凡科技企业网站建设
  • 用什么工具做网站亚马逊官方网站的建设
  • 建设班级网站北京seo公司司
  • 网站建设:成都今网科技jsp做的网站答辩问题
  • 中国建设银行山东省分行网站专业开发小程序的公司
  • 有哪些做的比较好的网站深圳黄页企业名录
  • 教育网站如何做经营企拓客软件怎么样
  • 外贸seo网站搭建网站建设hengfengera
  • 做网站公司哪家好企业网站的建立视频
  • 编程软件排行榜seo综合查询软件排名
  • 企业网站开发费用会计分录hemi网站怎么做热图
  • 怎么在百度做公司网站服务器安全工具
  • 软件企业公司网站模板网站策划书需求分析
  • 南山做网站的男女之间做下面哪个网站免费
  • 桂林技术交流站上外国网站用什么dns
  • 网站的域名起什么好处电商平台系统开发方案
  • 杭州网站开发一个网站做十个二级域名
  • 响应网站和模板网站有哪些php网站开发实例编程
  • 长春制作网站哪家好网站建站公司模板
  • 一个网站做无限关键词大型网站架构实战
  • 如何在网站上做网盘做招聘网站需要哪些手续
  • 郑州建设网站推广公司什么网站可以做试题
  • 网站建设费用还是网络专业深圳市住建局网站
  • 网站建设 课题研究的背景如何做微信官方网站
  • 怎么选择丹徒网站建设国内品牌备案建站
  • wordpress讨论吧seo费用价格
  • 公司网站恶意评价旅游网站的建设
  • 电视台视频网站建设方案潜江资讯网招聘信息