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

七牛直播网站怎么做中华建设网算什么级别网站

七牛直播网站怎么做,中华建设网算什么级别网站,海外域名购买,网站建设公司2018问题:java中创建的对象一般放在哪里?(全流程包含从创建到回收) 回答 大部分对象在堆中,这个基本都知道; 少部分对象是会在栈中的,比如作用域不局限于方法内的方法内部变量,这类对象的特征一般就是生命周期…

问题:java中创建的对象一般放在哪里?(全流程包含从创建到回收)

回答

大部分对象在堆中,这个基本都知道;
少部分对象是会在栈中的,比如作用域不局限于方法内的方法内部变量,这类对象的特征一般就是生命周期短、内存小;
至于为什么要放一部分进栈中,是为了避免这种小而短的对象加大GC的频率,这种对象方法结束会随着栈帧的释放而释放,减少堆的垃圾回收的压力。
在jdk1.6之后,基本都默认开启了相关配置,去监测这种所谓的逃逸对象,当 发现对象没有逃逸的可能,作用域仅局限于方法内且大小没那么大时,就会把它分配到栈中,这些都有相关参数可以配置。

问题:讲了栈中的对象,那你讲讲放入堆中的对象一般是怎么处理的?

回答

在这里插入图片描述

常规情况下,我们创建的对象,都默认是生命周期比较短的,优先分配在年轻代的Eden区。
然后就进入了常规的分代收集算法的流程,这里可以参考另一篇博客中的分代收集算法部分最全的GC流程描述
这里再补充一下里面没提到的几个细节

  1. 为什么默认年龄是15? 在程序编程中,15是个很敏锐的数字,因为是2^4-1,也就是4个比特位所能表达的对象大小。事实上,java对象头上存储分代年龄的长度确实就是4bit,详见多线程原理之synchronized锁的原理
  2. 动态年龄判断 除了年龄达到15,还有一个方式会进入老年代,就是在survivor空间中相同年龄的对象的总大小大于总空间大小的一半,那么此时年龄大于等于这个相同年龄的对象都会进入老年代。简单来说,就是动态的决定进入老年代的年龄阈值,比如年龄为3的对象就占了超过一半的空间大小,说明老龄化很严重了,有必要提前把它们放进老年代。
  3. 空间分配担保 在minorGC之前,会检查老年代最大连续可用空间是否大于新生代所有对象的总空间,来保证GC之后的对象若进入老年代的话有地方去。如果不够,通常就是fullGC,但是我们的原则是能不full就不full,所以有了一个空间分配担保机制----当出现上述情况时,检查老年代最大连续可用空间是否大于历代回收到老年代的对象的平均大小,如果大于,那么直接fullGC;如果小于这个平均大小,那就认为这次大概率也不会超过,正常发起minorGC即可。
http://www.15wanjia.com/news/158842.html

相关文章:

  • 青岛路桥建设集团有限公司网站深圳住房城乡建设局网站首页
  • 沈阳建设网站服务公司wordpress 隐形按钮
  • 网站建设销售ppt模板三星网上商城分期
  • 建设部网站官网办事厅东莞百度快速优化排名
  • 视频解析网站wordpress评论字段
  • 做系统用什么网站火山软件开发平台教程
  • 东莞人才网站酒类网站建设方案
  • 网站开发与app开发的区别发布网站搭建教程
  • 网站备案需要资料怎么做网站教程图片
  • 网站开发单子稷山做网站
  • 二级医院做网站设计专业就业方向
  • 网站开发 男生网站名字词
  • 太原百度推广排名优化seo外包如何
  • html5视频网站模板seo培训优化课程
  • 网站后台数据应该怎么做网站建设 网站制作 网站设计
  • 批量网站建设网站源码被注册为商标
  • 易优cms仿站教程婚纱摄影网页
  • 要怎样建立自己的网站wordpress手机版 mp3
  • 哪些网站是django做的asp网站没有数据库连接
  • 国内net开发的网站建设wordpress网速卡
  • 网站建设公司的正反瀑布网站模板
  • 网站源码下载后怎么用网站设计师发展方向
  • 沈阳建网站企业网站备案审核通过后
  • 网站如何做的看起来高大上医疗网站建设平台
  • 游戏网站设计风格有哪些怎么做网站背景图片
  • 地方网站盈利模式网站开发需求文档模板
  • 外贸网站商城门户网站建设方案ppt
  • 购物网站开发需要什么技术建设网站的费用预算
  • 上海市网站设计兰州seo推广
  • 网站进入沙盒期正规的丹阳网站建设