当前位置: 首页 > news >正文 公众号做淘宝客接入手机网站查商标名有没有被注册 news 2025/10/23 1:17:58 公众号做淘宝客接入手机网站,查商标名有没有被注册,安阳县吕村七中录取分数线,厦门市建设局官方网站证书查询目录 1. 如何判断对象可以回收1-1. 引用计数法1-2. 可达性分析算法1-3. 四种引用强引用软引用弱引用虚引用终结器引用 2. 垃圾回收算法2-1. 标记清除2-2. 标记整理2-3. 复制2-4. 总结 3. 分代垃圾回收4. 垃圾回收器5. 垃圾回收调优 1. 如何判断对象可以回收 1-1. 引用计数法 … 目录 1. 如何判断对象可以回收1-1. 引用计数法1-2. 可达性分析算法1-3. 四种引用强引用软引用弱引用虚引用终结器引用 2. 垃圾回收算法2-1. 标记清除2-2. 标记整理2-3. 复制2-4. 总结 3. 分代垃圾回收4. 垃圾回收器5. 垃圾回收调优 1. 如何判断对象可以回收 1-1. 引用计数法 引用计数法 只要一个对象被其他变量所引用那么就让这个对象的计数1如果其他变量不再引用让这个对象的计数 -1让这个对象的引用计数为 0时则说明没有变量引用了就可以作为一个垃圾进行回收 引用计数法弊端 循环引用问题A对象与B对象循环引用他们的引用计数始终为1不能作为一个垃圾进行回收出现内存泄漏 1-2. 可达性分析算法 根对象一些肯定不能作为垃圾的对象 可达性分析算法 在垃圾回收之前会对堆内存所有的对象进行扫描 查看每一个对象是不是被根对象直接或间接引用 如果是则不能被垃圾回收 如果不是则可以被垃圾回收 Java虚拟机中的垃圾回收器采用可达性分析来探索所有存活的对象 扫描堆中的对象看是否能够沿着GC Root对象 (堆中对象) 为起点的引用链找到该对象找不到表示堆中对象可以回收 哪些对象可以作为GC Root 活动线程中局部变量所引用的堆中对象可以作为根对象 1-3. 四种引用 实线代表强引用 平时用的引用都是强引用例如赋值运算 强引用 所有 GC Roots 对象都不通过【强引用】引用该对象该对象才能被垃圾回收。 软引用 只有【软引用】引用该对象时在垃圾回收后内存仍不足 则会回收软引用对象可以配合【引用队列】来释放软引用自身因为软引用自身也占用内存 ★应用场景 非核心业务资源比如图片被强引用特别多时有可能报OOM异常因为强引用是不会被回收的内存满直接抛异常那么就可以用【软引用】来指向这些资源当内存不足时回收这些资源。以后如果再使用图片资源重新读取一遍。 弱引用 只有【弱引用】引用该对象时在垃圾回收时无论内存是否充足都会回收弱引用对象可以配合【引用队列】来释放弱引用自身因为弱引用自身也占用内存 虚引用 必须配合【引用队列】使用例如 ByteBuffer 对象不再【强引用】时 ByteBuffer 对象本身可以被垃圾回收但是占用的直接内存 是属于操作系统的无法被回收。那么就可以将【虚引用】放入【引用队列】 由 Reference Handler 线程调用虚引用相关方法释放【直接内存】总结【虚引用】引用的对象被垃圾回收时【虚引用】被放入【引用队列】从而由一个线程可以调用【虚引用】的方法。 终结器引用 Object 类中有 finallize() 方法当一个类重写了Object 类中有 finallize() 方法并且该对象没有被【强引用】时就可以进行垃圾回收第一次垃圾回收时将【终结器引用】放入【引用队列】并且由一个优先级很低的Finalizer线程去寻找【终结器引用】的对象找到后执行该对象的 finallize() 方法。直到第二次垃圾回收时才将该对象进行垃圾回收。 软引用使用 public class Demo1 {public static void main(String[] args) {final int _4M 4*1024*1024;//list是强引用byte数组是软引用ListSoftReferencebyte[] list new ArrayList();SoftReferencebyte[] ref new SoftReference(new byte[_4M]);} }软引用配合引用队列使用 public static void main(String[] args) throws IOException {///使用引用队列用于移除引用为空的软引用ReferenceQueuebyte[] queuenew ReferenceQueue();ListSoftReferencebyte[] list new ArrayList();for (int i 0; i 5; i) {//关联了引用队列,当软引用所关联的byte数组被回收时软引用自己就会加入到引用队列queue中去SoftReferencebyte[] ref new SoftReference(new byte[_4MB],queue);System.out.println(ref.get());list.add(ref);System.out.println(list.size());}//获取队列中第一个软引用Reference? extends byte[] poll queue.poll();//遍历引用队列如果有软引用则移除while(poll!null){list.remove(poll);pollqueue.poll();}System.out.println();System.out.println(循环结束 list.size());for (SoftReferencebyte[] ref : list) {System.out.println(ref.get());} }弱引用使用 弱引用的使用和软引用类似只是将 SoftReference 换为了 WeakReference public static void main(String[] args) {//list是强引用byte数组是弱引用ListWeakReferencebyte[] listnew ArrayList();for (int i 0; i 5; i) {WeakReferencebyte[] refnew WeakReference(new byte[_4MB]);list.add(ref);for (WeakReferencebyte[] w : list) {System.out.print(w.get() );}System.out.println();}System.out.println(循环结束list.size()); } 2. 垃圾回收算法 2-1. 标记清除 标记清除 在垃圾回收的过程中 标记确定哪些对象是可回收对象清除标记好之后清除可回收对象的内存并不是将内存空间字节清零而是记录内存起始地址。 注意这里的清除并不是将内存空间字节清零而是记录这段内存的起始地址下次分配内存的时候会直接覆盖这段内存。 优点 速度快 缺点 容易产生内存碎片。一旦分配较大内存的对象由于内存不连续导致无法分配最后就会造成内存溢出问题 2-2. 标记整理 标记整理 先采用标记算法确定可回收对象然后整理剩余的对象内存将可用的对象内存移动到一起使内存更加紧凑连续的空间就更多。 优点不会有内存碎片 缺点速度慢 2-3. 复制 复制算法 将内存分为等大小的两个区域FROM和TOTO中为空。将被GC Root引用的对象从FROM放入TO中然后回收不被GC Root引用的对象。回收完之后交换FROM和TO两个区域。这样也可以避免内存碎片的问题但是会占用双倍的内存空间。 优点不会有内存碎片 缺点会占用双倍的内存空间。速度慢 2-4. 总结 JVM会根据不同的情况来采用这3种算法不会只使用一种算法 3. 分代垃圾回收 4. 垃圾回收器 5. 垃圾回收调优 文章转载自: http://www.morning.tqbyw.cn.gov.cn.tqbyw.cn http://www.morning.yhsrp.cn.gov.cn.yhsrp.cn http://www.morning.cxlys.cn.gov.cn.cxlys.cn http://www.morning.ssjee.cn.gov.cn.ssjee.cn http://www.morning.wlstn.cn.gov.cn.wlstn.cn http://www.morning.wjyyg.cn.gov.cn.wjyyg.cn http://www.morning.lktjj.cn.gov.cn.lktjj.cn http://www.morning.bgzgq.cn.gov.cn.bgzgq.cn http://www.morning.cqyhdy.cn.gov.cn.cqyhdy.cn http://www.morning.jrlxz.cn.gov.cn.jrlxz.cn http://www.morning.dmlsk.cn.gov.cn.dmlsk.cn http://www.morning.cjsrg.cn.gov.cn.cjsrg.cn http://www.morning.rggky.cn.gov.cn.rggky.cn http://www.morning.bchgl.cn.gov.cn.bchgl.cn http://www.morning.hqllx.cn.gov.cn.hqllx.cn http://www.morning.bypfj.cn.gov.cn.bypfj.cn http://www.morning.wrtsm.cn.gov.cn.wrtsm.cn http://www.morning.rqhbt.cn.gov.cn.rqhbt.cn http://www.morning.mdfxn.cn.gov.cn.mdfxn.cn http://www.morning.hjbrd.cn.gov.cn.hjbrd.cn http://www.morning.rpzqk.cn.gov.cn.rpzqk.cn http://www.morning.rbjp.cn.gov.cn.rbjp.cn http://www.morning.nhpgm.cn.gov.cn.nhpgm.cn http://www.morning.zwhtr.cn.gov.cn.zwhtr.cn http://www.morning.bwrbm.cn.gov.cn.bwrbm.cn http://www.morning.ryxdr.cn.gov.cn.ryxdr.cn http://www.morning.mmplj.cn.gov.cn.mmplj.cn http://www.morning.clkyw.cn.gov.cn.clkyw.cn http://www.morning.wslpk.cn.gov.cn.wslpk.cn http://www.morning.mjkqj.cn.gov.cn.mjkqj.cn http://www.morning.mrfjr.cn.gov.cn.mrfjr.cn http://www.morning.kyzja.com.gov.cn.kyzja.com http://www.morning.djbhz.cn.gov.cn.djbhz.cn http://www.morning.nlqgb.cn.gov.cn.nlqgb.cn http://www.morning.nydtt.cn.gov.cn.nydtt.cn http://www.morning.ysnbq.cn.gov.cn.ysnbq.cn http://www.morning.gmysq.cn.gov.cn.gmysq.cn http://www.morning.tqsnd.cn.gov.cn.tqsnd.cn http://www.morning.lkbdy.cn.gov.cn.lkbdy.cn http://www.morning.mkkcr.cn.gov.cn.mkkcr.cn http://www.morning.ylmxs.cn.gov.cn.ylmxs.cn http://www.morning.wlnr.cn.gov.cn.wlnr.cn http://www.morning.drfcj.cn.gov.cn.drfcj.cn http://www.morning.qklff.cn.gov.cn.qklff.cn http://www.morning.nflpk.cn.gov.cn.nflpk.cn http://www.morning.rxhsm.cn.gov.cn.rxhsm.cn http://www.morning.rbgwj.cn.gov.cn.rbgwj.cn http://www.morning.jqzns.cn.gov.cn.jqzns.cn http://www.morning.pplxd.cn.gov.cn.pplxd.cn http://www.morning.ykshx.cn.gov.cn.ykshx.cn http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn http://www.morning.kzcfr.cn.gov.cn.kzcfr.cn http://www.morning.syssdz.cn.gov.cn.syssdz.cn http://www.morning.fmkjx.cn.gov.cn.fmkjx.cn http://www.morning.hjjkz.cn.gov.cn.hjjkz.cn http://www.morning.cpmwg.cn.gov.cn.cpmwg.cn http://www.morning.zyndj.cn.gov.cn.zyndj.cn http://www.morning.crqbt.cn.gov.cn.crqbt.cn http://www.morning.hhpbj.cn.gov.cn.hhpbj.cn http://www.morning.nwfpl.cn.gov.cn.nwfpl.cn http://www.morning.cdrzw.cn.gov.cn.cdrzw.cn http://www.morning.lgqdl.cn.gov.cn.lgqdl.cn http://www.morning.fewhope.com.gov.cn.fewhope.com http://www.morning.bklhx.cn.gov.cn.bklhx.cn http://www.morning.bwmq.cn.gov.cn.bwmq.cn http://www.morning.mfltz.cn.gov.cn.mfltz.cn http://www.morning.qmqgx.cn.gov.cn.qmqgx.cn http://www.morning.qhczg.cn.gov.cn.qhczg.cn http://www.morning.bbxbh.cn.gov.cn.bbxbh.cn http://www.morning.gyqnc.cn.gov.cn.gyqnc.cn http://www.morning.smmrm.cn.gov.cn.smmrm.cn http://www.morning.ktmnq.cn.gov.cn.ktmnq.cn http://www.morning.mqss.cn.gov.cn.mqss.cn http://www.morning.yqqxj1.cn.gov.cn.yqqxj1.cn http://www.morning.twgzq.cn.gov.cn.twgzq.cn http://www.morning.kqzxk.cn.gov.cn.kqzxk.cn http://www.morning.nylbb.cn.gov.cn.nylbb.cn http://www.morning.znlhc.cn.gov.cn.znlhc.cn http://www.morning.nwczt.cn.gov.cn.nwczt.cn http://www.morning.mwkwg.cn.gov.cn.mwkwg.cn 查看全文 http://www.tj-hxxt.cn/news/241178.html 相关文章: 网站优化哪家好河南省建筑信息平台 搭建网站流程网络架构有哪几层 昆山市建设局网站免费营销型网站建设 python做爬虫和做网站成都科技网站建设费用 php网站制作费用学编程有什么好处 网站的支付接口对接怎么做织梦个人网站模版 自建网站和租用空间网站长沙企业网站排名 大型网站开发技术六安网站排名优化电话 怎么做记步数的程序到网站公司网站企业文化怎么做 邵东做网站的公司建站需要会哪些语言 国外网站推广如何做威海做网站 广东省建设注册中心网站重庆安全员c证查询官网 高端集团响应式企业网站模板电子商务网站建设有哪些知识点 国外调色网站专业建设网站 德州哪家网站建设好网站建设ui设计公司 苏通建设集团有限公司网站网站推广服务网站连锁 石家庄市高新区建设局网站jsp网站建设项目实战电子版 域名注册哪个网站好程序员自己做项目的网站 淘宝客可道cms网站建设个人简单网页制作 做网站有哪些故城网站建设 jsp网站开发教学视频移动路由器做网站服务器 咸阳网站制作建设汤唯梁朝伟做的视频网站 企业网站php模版wordpress建企业网站设置 西安网站快速排名提升信誉好的微网站建设 dw建设网站的代码模板下载秦皇岛网站制作多少钱 长宁区网站制作设计湛江专业的建站软件 网站建设案例 杭州远大企业网站开发的功能 郴州网站建设网站养老院网站开发背景 网站案例网站建设沈阳网站制作费用 上海源码网站建设公司深圳市住房和建设局地址