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

品牌网站建设哪好品牌建设方式有哪些

品牌网站建设哪好,品牌建设方式有哪些,青岛博海建设集团有限公司网站,上海天华建筑设计有限公司侯岳内存分配 默认情况下新生代和老年区的内存比例是1:2,新生代中Eden区和Survivor区的比例是8:1。 对象优先分配在Eden区。大对象直接进入老年区。通过-XX:PertenureizeThreshold参数设置临界值。长期存活的对象进入老年区。对象每熬过一次Minor GC,年龄1&…

内存分配

在这里插入图片描述
默认情况下新生代和老年区的内存比例是1:2,新生代中Eden区和Survivor区的比例是8:1。

  1. 对象优先分配在Eden区。
  2. 大对象直接进入老年区。通过-XX:PertenureizeThreshold参数设置临界值。
  3. 长期存活的对象进入老年区。对象每熬过一次Minor GC,年龄+1,当年龄增加到一定程度(默认15岁)就会进入老年区。-XX:MaxTenuringThreshold设置年龄临界值。
  4. 如果Survivor空间中相同年龄所有对象大小的总和大于Survivor空间的一办,年龄大于或等于该年龄的对象直接进入老年区。

何时发生GC及空间分配担保

Eden区没有足够空间分配内存时,发生Minor GC.

Minor GC:指发生在新生代的GC动作。一般速度迅速。
Major GC /Full GC:值发生在老年代的GC,一般速度比Minor GC慢上10倍。

在Minor GC之前,JVM会先检查老年代最大可用连续空间是否大于新生代所有对象总空间,如果成立,那么MinorGC可以确保是安全的。否则,查看HandlePromotionFailure设置值是否允许担保失败,如果允许会尝试进行MinorGC,否则会进行一次FullGC。

对象是否死去?

引用计数法

给对象中添加一个引用计数器,每当一个地方引用时计数器就加1,当引用失效时,计数器减1。当计数器值为0的时候,这个对象将不可能被引用,则判断该对象死亡。

  • 弊端:会出现循环引用而导致无法GC的情况。

可达性分析算法

通过一个根节点GC Roots向下搜索,当一个对象无法从GC Roots搜索到时,则证明此对象是可不用的。

引用

  • 强引用:有引用,绝不回收。
  • 软引用:在系统将要发生OOM之前,将对象纳入回收范围,如果这次回收有足够内存,则在下一次GC时进行回收。
  • 弱引用:GC时,无论当前内存是否足够,都会被回收掉。
  • 虚引用:和没有引用没有用多大区别,只是能在对象被GC时收到一个系统通知。

finalize

一个对象的死亡需要经历至少两次标记过程,在可达性分析时不可达则会进行第一次标记,并且进行一次筛选,筛选条件就是该对象是否有必要执行finalize()方法,当对象没有覆盖finalize方法,或finalize方法已经被JVM调用过了,JVM则任务该对象没有执行finalize的必要了。如果该对象有必要执行finalize方法,则该对象会被放到一个F-Queue队列中,稍后交由一个JVM自动建立的低优先级的Finalizer线程执行注意:这里智慧触发这个方法,并不保证会等待它运行结束。如果该对象在finalize执行中成功将自己关联到GC Root链上,JVM则会在第二次标记过程中将该对象从即将回收的集合中移除。

垃圾回收算法

标记 - 清除算法

算法分两个节点,标记阶段将要回收的对象进行标记,回收阶段直接将标记的内存进行回收。

  • 缺点:1. 标记和清除阶段的效率都不高。2.标记清除后会产生大量不连续内存碎片。

复制算法

将内存分成大小相等的两块,每次使用其中一块,当这块内存快使用完时,将还存活的对象复制到另一块上。

  • 缺点:内存缩小了一半。
    实际中发现不需要按1:1划分,默认情况下,JVM将年轻代按8:1:1分成eden、survivor1和survivor2三块。每次GC时,将Eden和其中一块Survivor中还活着的对象一次性复制到另一块Survivor上,最后清理掉Eden和刚才用过的Survivor的空间。当survivor空间不够时,由老年代内存进行分配担保,也就是将对象放到老年代中。

标记-整理算法

标记死去的对象,清除后将活着的对象整理在一起。

分代收集算法

新生代和老年代,不同的内存区域采用不同的收集算法。

GC日志

配置-XX:+PrintGCDetails参数,JVM会在发生GC时打印GC日志。
33.125: 1 [GC2 (Allocation Failure)[PSYoungGen3: 21096K->32K(22528K)4] 22608K->1543K(91136K)5,0.0008844 secs]6[Times: user=0.00 sys=0.00, real=0.00 secs]

在这里插入图片描述


  1. GC发生的时间。距离JVM启动的秒数。 ↩︎

  2. 说明这次GC的停顿类型。[Full GC 一般是因为出现了分配担保失败之类的问题导致STW。 ↩︎

  3. 表明GC发生的区域。 ↩︎

  4. GC前该内存区域已使用容量->GC后该内存区域已使用容量(该区域总容量) ↩︎

  5. GC前JAVA堆已使用容量->GC后JAVA堆已使用容量(Java堆总容量) ↩︎

  6. GC所占用时间。单位秒 ↩︎

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

相关文章:

  • 行政单位门户网站建设方案wordpress word文档
  • 创建一个网站多少钱黄骅做网站_黄骅昊信科技|黄骅网站|黄骅网站开发|黄骅微信|黄骅
  • 百度网站优化外包游民星空是用什么做的网站
  • icp备案网站接入信息 ip地址段wordpress上传不了主题
  • 西安网站设计培训试听梧州网站建设公司
  • 网站建设的数据库连接wordpress行情插件
  • 网站制作哪家便宜全球招商网加盟网
  • 网站服务公司哪个好淄博网站制作高端服务
  • 网站建设 山西大连手机模板建站
  • 建设一网站要多少钱购买网站开发服务费入账
  • 论述农产品电商网站建设上海外贸网站建设公司
  • 厦门博客网站制作黄陂机械加工网
  • 福建泉州做网站公司wordpress在哪注册
  • 做网站资源长沙网站外包公司
  • 服装设计素材网站邮箱号码大全
  • wordpress网站案例3d网络游戏前十名
  • 网站建设流程咨询一个做智能化的网站有哪些
  • 无锡专业网站建设公司如何更换网站域名
  • 做类似昵图网网站外省公司做网站备案
  • 网站推广的短视频推广电器网站建设免费咨询
  • 企业网站一般用什么域名网站备案 幕布
  • 青海建设厅网站尚少岩wordpress安卓版教程视频教程
  • 东莞做企业营销型网站的公司十大设计网站
  • 沈阳做网站 熊掌号重庆整站seo
  • 外贸网站网站建设微信网站怎么开发
  • 山西网站建设哪家好乾安网站建设公司电话
  • 网站建1设公司在家做网站
  • 微网站自己怎么做的吗流程页面设计
  • 网站开发php和c语言区别wordpress部署成英文怎么办
  • 融水县住房和城乡建设局网站智能小程序开发者工具