Module  java.base
软件包  java.lang.ref

Class ReferenceQueue<T>



  • public class ReferenceQueue<T>
    extends Object
    在检测到适当的可达性更改后,引用队列被垃圾收集器附加到哪个已注册的参考对象。
    从以下版本开始:
    1.2
    • 构造方法详细信息

      • ReferenceQueue

        public ReferenceQueue​()
        构造一个新的引用对象队列。
    • 方法详细信息

      • poll

        public Reference<? extends T> poll​()
        轮询此队列以查看引用对象是否可用。 如果没有进一步延迟可用,那么它将从队列中删除并返回。 否则,此方法立即返回null
        结果
        一个参考对象,如果一个可以立即可用,否则为 null
      • remove

        public Reference<? extends T> remove​(long timeout)
                                      throws IllegalArgumentException,
                                             InterruptedException
        删除此队列中的下一个参考对象,阻塞,直到任何一个可用或给定的超时期限到期。

        此方法不提供实时保证:它调度超时,就像调用Object.wait(long)方法一样。

        参数
        timeout - 如果为正,则在等待引用添加到此队列时,阻塞最多timeout毫秒。 如果为零,则无限期地阻止。
        结果
        参考对象,如果在指定的超时时间内可用,否则为 null
        异常
        IllegalArgumentException - 如果timeout参数的值为负
        InterruptedException - 如果超时等待中断