美文网首页
虚引用介绍

虚引用介绍

作者: Shaw_Young | 来源:发表于2020-07-23 00:28 被阅读0次

虚引用需要java.lang.ref.PhantomReference类来实现。

顾名思义,就是形同虚设,与其他几种引用都不用,虚引用并不会决定对象的生命周期。
如果一个对象仅持有虚引用,那么它就和没有任何引用一样,在任何时候都可以能被垃圾回收器回收,它不能单独使用也不能通过它访问对象,虚引用必须和引用队列(ReferenceQueue)联合使用。

虚引用的主要作用是跟踪对象被垃圾回收的状态。仅仅是提供了一种确保对象被finalize以后做某些事情的机制。
PhantomReference的get方法总是返回null,因此无法访问对应的引用对象。其意义在于说明一个对象已经进入finalization阶段,可以被gc回收,用来实现比finalization机制更灵活的回收操作。

换句话说,设置虚引用关联的唯一目的,就是在这个对象被收集器回收的时候收到一个系统通知或者后序添加进一步的处理。
Java技术允许使用finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。

相关文章

  • 虚引用介绍

    虚引用需要java.lang.ref.PhantomReference类来实现。 顾名思义,就是形同虚设,与其他几...

  • 第三章

    1.虚引用的作用在书中介绍了强引用、软引用、弱引用、虚引用。那么虚引用的功能到底是什么呢?在垃圾回收的过程中,当对...

  • jvm-垃圾回收

    写在前面: 常见面试题: 如何判断对象是否死亡(两种方法)? 简单的介绍一下强引用、软引用、弱引用、虚引用(虚引用...

  • 搞定JVM垃圾回收就是这么简单

    写在前面 常见面试题: 如何判断对象是否死亡(两种方法)。 简单的介绍一下强引用、软引用、弱引用、虚引用(虚引用与...

  • 深入理解Java弱引用

    Java中的引用类型 Java中存在四种引用,它们由强到弱依次是:强引用、软引用、弱引用、虚引用。下面我们简单介绍...

  • JAVA引用(WeakHashMap、Cleaner)

    Reference 引用类 强引用、软引用、弱引用、虚引用 软引用、弱引用、虚引用,可以配合ReferenceQu...

  • 虚引用

    https://www.cnblogs.com/mfrank/p/9837070.html 定义 虚引用是使用Ph...

  • 深入理解Java中的引用(二)——强软弱虚引用

    深入理解Java中的引用(二)——强软弱虚引用 在上一篇文章中介绍了Java的Reference类,本篇文章介绍他...

  • JAVA四种引用(强引用,弱引用,软引用,虚引用)

    JAVA四种引用(强引用,弱引用,软引用,虚引用) [toc] 参考:Java 的强引用、弱引用、软引用、虚引用四...

  • LeakCanary 与内存泄漏定位

    虚引用 在了解 LeakCanary 之前,先来了解下虚引用。 虚引用必须与 ReferenceQueue 一起使...

网友评论

      本文标题:虚引用介绍

      本文链接:https://www.haomeiwen.com/subject/ifrnkktx.html