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

东莞网站平台价格阳江房产网签查询

东莞网站平台价格,阳江房产网签查询,宿松网站建设公司,关键词搜索排名推广1. Java引用介绍Java从1.2版本开始引入了4种引用#xff0c;这4种引用的级别由高到低依次为#xff1a;强引用 软引用 弱引用 虚引用⑴ 强引用(Strong Reference)强引用是使用最普遍的引用#xff0c;也是赋值的默认引用。如果一个对象具有强引用…1. Java引用介绍Java从1.2版本开始引入了4种引用这4种引用的级别由高到低依次为强引用    软引用    弱引用    虚引用⑴ 强引用(Strong Reference)强引用是使用最普遍的引用也是赋值的默认引用。如果一个对象具有强引用那垃圾回收器绝不会回收它。当内存空间不足Java虚拟机宁愿抛出OutOfMemoryError错误使程序异常终止也不会靠随意回收具有强引用的对象来解决内存不足的问题。⑵ 软引用(Soft Reference)如果一个对象只具有软引用则内存空间足够垃圾回收器就不会回收它如果内存空间不足了就会回收这些对象的内存。只要垃圾回收器没有回收它该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。软引用可以和一个引用队列(ReferenceQueue)联合使用如果软引用所引用的对象被垃圾回收器回收Java虚拟机就会把这个软引用加入到与之关联的引用队列中。⑶ 弱引用(Weak Reference)弱引用与软引用的区别在于只具有弱引用的对象拥有更短暂的生命周期。在垃圾回收器线程扫描它所管辖的内存区域的过程中一旦发现了只具有弱引用的对象不管当前内存空间足够与否都会回收它的内存。不过由于垃圾回收器是一个优先级很低的线程因此不一定会很快发现那些只具有弱引用的对象。弱引用可以和一个引用队列(ReferenceQueue)联合使用如果弱引用所引用的对象被垃圾回收Java虚拟机就会把这个弱引用加入到与之关联的引用队列中。⑷ 虚引用(Phantom Reference)“虚引用”顾名思义就是形同虚设与其他几种引用都不同虚引用并不会决定对象的生命周期。如果一个对象仅持有虚引用那么它就和没有任何引用一样在任何时候都可能被垃圾回收器回收。虚引用主要用来跟踪对象被垃圾回收器回收的活动。虚引用与软引用和弱引用的一个区别在于虚引用必须和引用队列 (ReferenceQueue)联合使用。当垃圾回收器准备回收一个对象时如果发现它还有虚引用就会在回收对象的内存之前把这个虚引用加入到与之 关联的引用队列中。四种引用回收情景级别什么时候被垃圾回收用途生存时间强引用从来不会对象的一般状态JVM停止运行时终止软引用在内存不足时对象简单缓存内存不足时终止弱引用在垃圾回收时对象缓存gc运行后终止虚引用UnknownUnknownUnknownJava 4 种引用使用场景StrongReference、 SoftReference、 WeakReference、PhantomReference (传说中的幽灵引用)这 4 种类型的引用与 GC 有着密切的关系, 下面逐一来看它们的定义和使用场景 :1. Strong ReferenceStrongReference 是 Java 的默认引用实现,  它会尽可能长时间的存活于 JVM 内 当没有任何对象指向它时 GC 执行后将会被回收Testpublic void strongReference() {Object referent  new Object();/*** 通过赋值创建 StrongReference*/Object strongReference  referent;assertSame(referent, strongReference);referent  null;System.gc();/*** StrongReference 在 GC 后不会被回收*/assertNotNull(strongReference);}2. WeakReference WeakHashMapWeakReference是一个弱引用,  当所引用的对象在 JVM 内不再有强引用时, GC 后 weak reference 将会被自动回收Testpublic void weakReference() {Object referent  new Object();WeakReference weakRerference  new WeakReference(referent);assertSame(referent, weakRerference.get());referent  null;System.gc();/*** 一旦没有指向 referent 的强引用, weak reference 在 GC 后会被自动回收*/assertNull(weakRerference.get());}WeakHashMap 使用 WeakReference 作为 key一旦没有指向 key 的强引用, WeakHashMap 在 GC 后将自动删除相关的 entryTestpublic void weakHashMap() throws InterruptedException {Map weakHashMap  new WeakHashMap();Object key  new Object();Object value  new Object();weakHashMap.put(key, value);assertTrue(weakHashMap.containsValue(value));key  null;System.gc();/*** 等待无效 entries 进入 ReferenceQueue 以便下一次调用 getTable 时被清理*/Thread.sleep(1000);/*** 一旦没有指向 key 的强引用, WeakHashMap 在 GC 后将自动删除相关的 entry*/assertFalse(weakHashMap.containsValue(value));}3. SoftReferenceSoftReference 于 WeakReference 的特性基本一致 最大的区别在于 SoftReference 会尽可能长的保留引用直到 JVM 内存不足时才会被回收(虚拟机保证), 这一特性使得 SoftReference 非常适合缓存应用Testpublic void softReference() {Object referent  new Object();SoftReference softRerference  new SoftReference(referent);assertNotNull(softRerference.get());referent  null;System.gc();/***  soft references 只有在 jvm OutOfMemory 之前才会被回收, 所以它非常适合缓存应用*/assertNotNull(softRerference.get());}参考推荐
http://wiki.neutronadmin.com/news/37752/

相关文章:

  • 自己建设网站步骤产品外观设计的重要性
  • 哪些网站容易做三星网上商城打不开
  • 有些网站做不了seo山东省建设厅网站维护电话
  • 云南网站建设维修公司wordpress 分享 可见
  • 个人网站的建设目标百度托管公司
  • 公司 网站建正规的拼多多运营哪里找
  • 可以做内容的网站网站建设好后 如何验收
  • 怎样做才能让百度搜到网站产品电子商务网站搭建方案
  • 资讯平台网站模板网站建设虚拟空间
  • 网站不备案可以做百度竞价吗神童预言新冠2023结束
  • 赣州网站建设效果网站的flash怎么做的
  • 网站后台数据处理编辑主要是做什么的啊网络营销外包推广系统
  • 网站建设课程设计报告php那非西
  • 有一个做场景动画的网站电商网站公司
  • 网站app搭建短视频代运营费用明细
  • 怎么刷网站权重公司小程序怎么制作
  • 网站开发中系统部署与维护要求建网站的电脑可以换位置吗
  • 简要描述创建商务站点的商务网站建设微信运营销售
  • 网站如何屏蔽iplogo艺术字转换器
  • 国和建设集团网站东莞长安网站优化公司
  • 网站开发首选语言点样做网站
  • 做视频网站容易收录吗网站建设程序员
  • 个人网站免费模板下载办公oa系统排行
  • wap网站建设策划方案厦门专业做网站公司
  • 医疗微网站建设计划书自己网上开店怎么做
  • 吉安哪家做网站的公司好logo制作流程
  • 做的网站怎么把技术支持去掉做的网站打不开
  • 网站模板网站泉州住房和城乡建设部网站
  • 越南人一般去哪个网站做贸易企业门户网站建设jsp
  • 哈尔滨网站建设网络优化东莞网络推广策略