public class SoftReference<T> extends Reference<T>
假设垃圾收集器确定在某一个时间点的对象是softly reachable。当时可以选择清晰的原子都软引用,对象和所有软引用其他软可及的对象从对象的访问通过一系列强有力的依据。在同一时间或一段时间后,它会将那些新开垦的软引用是引用队列注册。
轻轻的可访问对象的所有软引用保证已在虚拟机抛出一个OutOfMemoryError
清除。否则,没有约束被放置在一个软引用将被清除的时间或一组这样的引用到不同的对象将被清除的顺序。然而,虚拟机实现,鼓励对清除最近创建的或最近使用的软引用的偏见。
这个类的直接实例可以用来实现简单的高速缓存,这个类或派生的子类也可以使用在更大的数据结构来实现更复杂的高速缓存。只要一个软引用所指的是强烈的到达,即实际上是在使用软引用不会被清除。因此,一个复杂的缓存,例如,防止其最近使用的条目被保持强大的参照物这些条目被丢弃,剩下的条目被丢弃在垃圾收集器的自由裁量权。
Constructor and Description |
---|
SoftReference(T referent)
创建一个引用给定对象的新的软引用。
|
SoftReference(T referent, ReferenceQueue<? super T> q)
创建一个新的软引用,该引用是指给定的对象,并用给定的队列进行注册。
|
public SoftReference(T referent)
referent
对象新软参考参考
public SoftReference(T referent, ReferenceQueue<? super T> q)
referent
对象新软参考参考
q
-队列的引用进行登记,或
null如果不需要登记
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.