首页 > 文章列表 > java软引用在队列的应用

java软引用在队列的应用

java 软引用
184 2022-08-06

说明

1、软引用可与引用队列联合使用。如果软件引用的引用对象被垃圾回收。如果一个对象只有软引用,当存储空间充足时,垃圾回收器不会回收;如果存储空间不足,则回收这些对象的存储。只要垃圾回收器没有回收,对方就可以使用程序。

2、JAVA虚拟机将该软件引用添加到与之相关的引用队列中。

实例

    ReferenceQueue<String> referenceQueue = new ReferenceQueue<>();
    String str = new String("abc");
    SoftReference<String> softReference = new SoftReference<>(str, referenceQueue);
 
    str = null;
    // Notify GC
    System.gc();
 
    System.out.println(softReference.get()); // abc
 
    Reference<? extends String> reference = referenceQueue.poll();
    System.out.println(reference); //null

本教程操作环境:windows7系统、java10版,DELL G3电脑。