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

洛阳做网站优化/产品推广步骤

洛阳做网站优化,产品推广步骤,wordpress上传网上打不开,网站开发的软件支持今天看thinking in java,里面很详细的谈到java垃圾回收器机制,看完后让我对这神秘的区域有一定的了解,特写一些小总结记录下来。分两点来说。第一点:Object.finalize();方法。finalize()方法是Object类的意味着所有类都可以使用、…

今天看thinking in java,里面很详细的谈到java垃圾回收器机制,看完后让我对这神秘的区域有一定的了解,特写一些小总结记录下来。

分两点来说。

第一点:Object.finalize();方法。finalize()方法是Object类的意味着所有类都可以使用、重写该方法。当对象调用finalize方法后,相当于告诉垃圾回收器:“我是垃圾,在下次垃圾回收的时候可以把我回收”,然后垃圾回收器在下次回收垃圾的时候就把这个对象给回收了,但是在程序运行周期中,垃圾回收器不一定会执行,它一般在虚拟机内存不够的时候才会执行,为什么是这样呢?因为垃圾回收器的执行也消耗资源、性能,而且在程序结束的时候,虚拟机的内存会自动释放归还给内存。当然你也可以显示地调用System.gc();来告诉系统立刻、马上进行垃圾回收,但是不建议这么做,虚拟机总是在最优的时刻调用垃圾回收。很多经验丰富的开发者同时建议:如果不是必须,最好不要使用finalize()。

第二点:垃圾回收。垃圾回收这个动作实际上做了两件事,1、回收垃圾,释放内存;2、重新排列堆中内容,让内存的分配更高效。

在程序启动后,java虚拟机在不断地监视着内存情况,如果发现垃圾比较多,对象在堆中排布比较零散,启动第一种模式:停止-复制(stop and copy)。先把“活”的对象找出来,怎样找呢?垃圾回收器检索整个堆,因为引用可能不断关联着引用,所以将堆中的引用整理出一个“脉络图”,没有被引用的就是“死”的对象,接着,程序短时间停止,把“活”的对象从堆A复制到堆B中,一个挨一个排列整齐,现在堆A只剩下“死”的对象了,也就是垃圾,回头把堆A全部清理,这样就完成一次垃圾清理了。

假设有9个碎片化严重的对象,排布前和排布后对比:

24f0cb6cd0aa783e92012180ffa81fca.png

有人可能想到,如果垃圾比较少,对象比较稳定的情况,那么要把所有“活”的对象迁移到另一个堆里,不是很耗费性能吗?就好比一座稳定的大山需要搬迁,工程浩大。对于这种情况,启动第二种模式:标记-清除(mark and clear),同样如上方法整理出“脉络图”,把“死”的对象标记起来,程序短时间暂停,然后垃圾回收器把标记的对象给回收。因为垃圾较少,不会造成内存碎片化太严重,所以这个模式不会对堆中对象重新排布。

http://www.jmfq.cn/news/4847095.html

相关文章:

  • 网站开发语言格式化标记语言/购买友情链接网站
  • 郑州网站建设包括哪些/seo综合查询怎么进入网站
  • 免费网站建设专业的公司/seo门户网站优化
  • 做公司网站怎么做/企业文化理念
  • 备案号新增网站/网络营销的特点有哪些特点
  • 西安网站建设首选/保温杯软文营销300字
  • 成都网站运营维护厂家/百度搜索引擎入口登录
  • 网站服务器租用和自己搭建的区别/中国疫情最新消息
  • 江西网站建设企业/武汉seo学徒
  • 外贸自己做网站/百度seo招聘
  • 专业的营销型网站建设公司/百度在线识别图片
  • 吉林建设工程信息网站/18款禁用网站app直播
  • 中国十佳企业网站设计公司/推广网站推广
  • 东营做网站哪里好/优化内容
  • 做软件需要网站吗/怎样在百度打广告
  • 哪个网站做简历好/网站推广常用方法
  • 老阿姨哔哩哔哩b站肉片入口直播/游戏特效培训机构排名
  • 南京汽车 企业 网站建设/做网站哪家好
  • 瑞金网站建设/天津网站建设公司
  • 抖音引流推广软件/seo网站优化培
  • 做网站有地区差异吗/友情链接检索数据分析
  • 头条滚动 wordpress/seo整合营销
  • 中国移动在线营销服务中心/宁波网站快速优化
  • 建设网站网站名/百度代做seo排名
  • 昆山专业网站建设公司/seo搜索优化专员招聘
  • 大连网站建设培训/爱站网爱情电影网
  • 网站建设相关参考资料/苏州关键词排名提升
  • 网站里面的链接怎么做的/中文域名注册
  • wordpress破解登录密码破解/太原seo管理
  • 购物商城网站的运营/企业网站设计思路