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

河北手机响应式网站建设设计wordpress本地打开

河北手机响应式网站建设设计,wordpress本地打开,crm客户管理系统排名,东原ARC网站建设公司Java技术体系中所提倡的自动内存管理策略最终可以归结为自动化地解决了两个问题#xff1a;给对象分配内存以及回收分配给对象的内存#xff1b; 几条普遍的分配规则#xff1a;1、对象优先在Eden区分配年轻代分为三个区#xff1a;1个Eden区2个Survivor区。大部分对象在Ed…Java技术体系中所提倡的自动内存管理策略最终可以归结为自动化地解决了两个问题给对象分配内存以及回收分配给对象的内存 几条普遍的分配规则1、对象优先在Eden区分配年轻代分为三个区1个Eden区2个Survivor区。大部分对象在Eden区中生成大对象可以直接被创建在年老代还存活的对象将被复制到一个Survivor区当这个Survivor区满时此区的存活对象将被复制到剩下的一个Survivor区中当这个Survivor区也满了的时候从第一个Survivor复制过来的并且此时还存活的对象将被复制到年老区。需要注意的是Survivor的两个区是对称的没先后关系所以同一个区中可能同时存在从Eden区复制过来的对象和从前一个Survivor区复制过来的对象而复制到年老区的就只有从第一个Survivor区过去的对象。并且Survivor区总有一个是空的。Minor GCYoung GC对象被创建时内存的分配首先发生在年轻代大部分的对象在创建后很快就不再使用因此很快变得不可达于是被年轻代的GC机制清理掉这个GC机制被称为Minor GC或Young GC。注意Minor GC并不代表年轻代内存不足它事实上只表示在Eden区上的GC。由于绝大部分对象都是短命的甚至存活不到Survivor区中所以Eden与Survivor的比例较大HotSpot默认为81. 在Eden区HotSpot虚拟机使用了两种技术来加快内存分配。分别是bump-the-pointer和TLABThread- Local Allocation Buffers这两种技术的做法分别是由于Eden区是连续的因此bump-the-pointer技术的核心就是跟踪最后创建的一个对象在对象创建时只需要检查最后一个对象后面是否有足够的内存即可从而大大加快内存分配速度而对于TLAB技术是对于多线程而言的将Eden区分为若干段每个线程使用独立的一段避免相互影响。TLAB结合bump-the-pointer技术将保证每个线程都使用Eden区的一段并快速的分配内存 2、大对象直接分配在老年代所谓的大对象是指的需要大量连续内存空间的Java对象。比如那种很长的字符串以及数组。经常出现大对象容易导致内存还有不少空间时就提前触发垃圾收集以获取足够的连续空间来“安置”它们年老代存放从年轻代存活的对象。一般来说年老代存放的都是生命周期较长的对象。年老代的空间一般比年轻代大能存放更多的对象在年老代上发生的GC次数也比年轻代少。当年老代内存不足时将执行Major GC也叫Full GC可能存在年老代对象引用新生代对象的情况如果需要执行Young GC则可能需要查询整个老年代以确定是否可以清理回收这显然是低效的。解决的方法是年老代中维护一个512 byte的块——”card table“所有老年代对象引用新生代对象的记录都记录在这里。Young GC时只要查这里即可不用再去查全部老年代因此性能大大提高。一般老年代用的算法是标记-整理算法即标记出仍然存活的对象存在引用的将所有存活的对象向一端移动以保证内存的连续 在发生Minor GC时虚拟机会检查每次晋升进入老年代的大小是否大于老年代的剩余空间大小如果大于则直接触发一次Full GC否则就查看是否设置了-XX:HandlePromotionFailure允许担保失败如果允许则只会进行MinorGC此时可以容忍内存分配失败如果不允许则仍然进行Full GC这代表着如果设置-XX:Handle PromotionFailure则触发MinorGC就会同时触发Full GC哪怕老年代还有很多内存所以最好不要这样做。使用-XX:PretenureSizeThreshold参数令大于这个设置值的对象直接在老年代分配这样的目的主要是为了避免在Eden区以及2个Survivor区之间发生大量的内存复制-XX:PretenureSizeThreshold参数只对Serial 和ParNew 收集器有效Parallel Sacvenge收集器不认识此参数。-XX:PretenureSizeThreshold参数的值不能像-Xms一样直接写3M要写成3145728 3、长时间存活的对象分配在老年代虚拟机采用了分代收集的思想来管理内存那么内存回收时就必须能识别哪些对象在新生代哪些对象应在老年代所以虚拟机给每个对象定义了一个对象年龄计数器如果对象在Eden区出生并经历一次Minor GC后仍然存活并且能被Survivor区所容纳那么对象年龄计数器值为1对象在Survivor区中每熬过一次Minor GC年龄就会增加1默认年龄是15可以通过设置-XX:MaxTenuringThreshold来设置。 4、动态对象年龄判定为了能更好的适应不同程序的内存状况虚拟机并不是永远都是要求对象的年龄达到了MaxTenuringThreshold才能晋升老年代如果在Survivor空间内相同年龄所有对象大小总和大于 Survivor空间的一半年龄等于或大于该年龄的对象可以直接进入老年代而无需达到MaxTenuringThreshold设定的年龄 5、空间分配担保在发生Minor GC之前虚拟机会先检查老年代最大可用的连续空间是否大于新生代所有对象的总和。如果条件成立那么Minor GC可以确保是安全的如果不成立那么虚拟机会查看HandlerPromotionFailure设置值是否允许担保失败。如果允许会检查老年代最大可 用的连续空间是否大于历次晋升到老年代对象的平均大小如果大于则尝试进行一次Minor GC如果小于则会进行一次Full GC转载于:https://www.cnblogs.com/time-info/p/4514190.html
http://www.zqtcl.cn/news/695991/

相关文章:

  • 白云网站建设网站版式
  • 做美食有哪些网站科技公司介绍
  • 网站后台被百度蜘蛛抓取哪个做网站比较好
  • 企业建设网站的需求分析百度免费发布信息平台
  • 网站建设交易中心上海装修公司排行榜
  • 桂林论坛网站有哪些在线设计平台用户分析
  • wap网站的开发去加网 wordpress
  • 博客网站建设设计论文总结php mysql做网站登录
  • 海南智能网站建设公司wordpress 如何使用php版本号
  • 河南网站开发培训app 软件开发
  • 购物网站功能介绍一流的高密网站建设
  • 电影网站怎么做优化wordpress 去掉w
  • 永久网站空间标书制作员工资很低吗
  • 做网站用到ps么淘宝优惠网站怎么做
  • jsp 淘宝网站验证码 设计搜索引擎排名
  • pdf怎么做电子书下载网站北京成立公司
  • 网站后台附件无法上传阿克苏建设网站
  • 网站和网址有什么不同佛山狮山网站建设
  • 有免费的微网站是什么可以做长图的网站
  • 南昌手机建站模板18种禁用软件黄app
  • 备案的域名做电影网站wordpress伪静态cdn配置
  • 国家城乡住房建设部网站百度关键词首页排名
  • 安卓软件开发需要学什么软件北京百度推广优化公司
  • 用asp.net 做网站wordpress网址缩短
  • 中国工程建设交易信息网站仿蘑菇街wordpress主题
  • 网站需要怎么做做普通网站公司吗
  • 网站收录平台方法网站建设是不是都需要交费
  • 上海 政务网站建设情况营销模式有哪些 新型
  • 国内做免费视频网站有哪些苏州娱乐场所最新消息
  • 福田建设网站宿迁网站建设案例