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

重庆 网站建设网站建设设计企业

重庆 网站建设,网站建设设计企业,郑州网站建设哪家有,进入百度官网文章目录 1.标记算法1.1 引用计数法1.2 可达性分析法 2.回收算法2.1 标记-清除算法#xff08;Mark-Sweep#xff09;2.2 复制算法#xff08;Coping#xff09;2.3 标记-整理算法#xff08;Mark-Compact#xff09; 3.三种垃圾回收算法的对比 为什么要进行垃圾回收Mark-Sweep2.2 复制算法Coping2.3 标记-整理算法Mark-Compact 3.三种垃圾回收算法的对比 为什么要进行垃圾回收 垃圾是指 JVM 中没有任何引用指向它的对象如果不及时清理这些垃圾对象那么它就会一直占用内存如果垃圾对象越来越多就会出现OOM了。 要判断对象是否是垃圾对象有两种方式一、引用计数法。二、可达性分析法。 而要清除垃圾对象有三种常用方式一、标记-清除算法。二、复制算法。三、标记-整理算法。 1.标记算法 要清除垃圾首先要找到垃圾JVM是通过什么算法找到堆中的垃圾对象的呢 1.1 引用计数法 每个对象都保存一个引用计数器属性用于记录对象被引用的次数。如果计数器为 0 则表示是垃圾对象。 优点原理简单计数器为 0 则表示是垃圾对象。 缺点 需要额外的空间和时间来维护引用计数。严重 无法处理循环引用的问题。 循环引用就是A对象里有个B对象的属性B对象里有个A对象的属性这样的话A和B的引用计数器都会等于1永远不会被回收。所以引用计数法很少使用 1.2 可达性分析法 可达性分析法会以GC Roots作为起始点然后一层一层的去寻找引用的对象被找到的对象就是存活对象无法到达的对象就是垃圾对象。 GC Roots是一组引用基本常用的包括 线程的虚拟机栈的栈帧中的方法参数、局部变量所对应的对象引用线程的本地方法栈的栈帧中的方法参数、局部变量所对应的对象引用方法区中保存的类信息中静态属性、常量属性所对应的对象引用 2.回收算法 2.1 标记-清除算法Mark-Sweep 既然我们已经能够找到哪些是垃圾对象那么我们该怎么去回收这些垃圾对象呢这里又涉及到一些算法首先比较简单的就是标记-清除算法。 标记-清除算法是一种非常基础的垃圾回收算法针对某块内存空间比如新生代、老年代如果可用内存不足后就会STW暂停用户线程的执行然后执行算法进行垃圾回收 标记阶段从 GC Roots 开始遍历找到可达对象并在对象头中进行记录。清除阶段堆内存空间进行线性遍历如果发现对象头中没有记录是可达对象则回收它。 缺点 效率不高和后面讲的算法来比效率确实不高。内存碎片对象被清除后会留下一块一块的小内存由于这些小内存不是连续的所以很可能不够存储新来的大对象。 优点 思路简单。 2.2 复制算法Coping 复制算法的思想就是空间换时间。它将内存空间分为两块每次只使用一块在进行垃圾回收时会首先STW然后遍历将可达对象复制到另外没有被使用的内存块中然后再将当前内存块标记为可重用后续再按相同的流程进行垃圾回收两块内存交换着来。这也是为什么新生代中会有 S1 和 S2 两块内存区域的原因。 复制算法只遍历一次在遍历的同时就把可达对象复制到另一块内存中而标记-清除算法需要遍历两次标记和清除各一次。 优点 只遍历一次效率高。不会出现内存碎片。 缺点 需要更多的内存始终有一半的空闲内存。对象复制后对象的内存地址发生了变化需要额外的时间修改栈帧中记录的引用地址。如果可达对象比较多垃圾对象比较少那么复制算法的效率就会比较低所以新生代特别适合复制算法因为新生代的垃圾对象比较多但也不绝对。 2.3 标记-整理算法Mark-Compact 第一阶段和标记-清除算法一致也是标记可达对象也会STW。 第二阶段将所有存活对象移动到内存的一端。 最后清理边界外的所有空间 优点 不会出现内存碎片。也不需要利用额外的内存空间。 缺点 效率要低于标记清除算法、复制算法。也需要修改栈帧中的引用地址。 3.三种垃圾回收算法的对比 标记-清除标记-整理复制速度中等最慢最快空间开销少有碎片少无碎片最多移动对象否是是
http://www.w-s-a.com/news/683396/

相关文章:

  • 网站优化的关键词自己怎么做外贸网站空间
  • 现在建设的网站有什么劣势温州互联网公司
  • 重庆自助企业建站模板淘宝关键词top排行榜
  • 平邑网站制作买高端品牌网站
  • 深圳建网站三千网站安全代维
  • 西宁市精神文明建设网站装饰设计甲级资质
  • 做教育行业营销类型的网站徐州做网站多少钱
  • 临沂品牌网站制作企业网站建设搜集资料
  • wordpress注册验证码手机网站优化
  • 往建设厅网站上传东西做衣服的教程网站有哪些
  • 网上商城网站设计免费咨询口腔科医生回答在线
  • 南京网站c建设云世家 s浏览器
  • 如何做镜像别人网站wordpress菜单对齐修改
  • 长春网站建设net企业公示信息查询官网
  • 金鹏建设集团网站可在哪些网站做链接
  • 电子产品网站开发背景网站关键词优化方案
  • 建网站论坛wordpress提交数据库错误
  • 国内网站建设公司开源网站系统
  • 网站开发公司上大连网站建设流程图
  • 银川网站seo宁波网
  • 个人备案网站会影响吗网站添加 备案
  • 网站建设与电子商务的教案关于旅游网站建设的方案
  • 电子商务网站建设设计原则找做网站找那个平台做
  • 天津高端品牌网站建设韶关网站建设墨子
  • Wordpress多站点为什么注册不了2008iis搭建网站
  • 天津高端网站制作建网站的公司服务
  • 温州网站推广优化类似淘宝的网站怎么做的
  • 网站建设实训考试什么网站做玩具的比较多
  • 上海网站建设特点怎样给公司做一个网站做推广
  • 流量网站怎么做的济南优化排名公司