类 ConcurrentReferenceHashMap.ReferenceManager
- java.lang.Object
-
- cc.shacocloud.mirage.utils.map.ConcurrentReferenceHashMap.ReferenceManager
-
- 封闭类:
- ConcurrentReferenceHashMap<K,V>
protected class ConcurrentReferenceHashMap.ReferenceManager extends Object
用于管理ConcurrentReferenceHashMap.Reference的策略类。 如果需要支持其他的引用类型,这个类可以被重写。
-
-
构造器概要
构造器 限定符 构造器 说明 protectedReferenceManager()
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 ConcurrentReferenceHashMap.Reference<K,V>createReference(ConcurrentReferenceHashMap.Entry<K,V> entry, int hash, @Nullable ConcurrentReferenceHashMap.Reference<K,V> next)用于创建一个新的ConcurrentReferenceHashMap.Reference的工厂方法。@Nullable ConcurrentReferenceHashMap.Reference<K,V>pollForPurge()返回任何已经被垃圾收集并且可以从*底层结构中清除的引用,如果没有引用需要清除,则返回null。
-
-
-
方法详细资料
-
createReference
public ConcurrentReferenceHashMap.Reference<K,V> createReference(ConcurrentReferenceHashMap.Entry<K,V> entry, int hash, @Nullable @Nullable ConcurrentReferenceHashMap.Reference<K,V> next)
用于创建一个新的ConcurrentReferenceHashMap.Reference的工厂方法。- 参数:
entry- 所载的条目hash- 哈希值next- 链中的下一个引用,如果没有,则为null- 返回:
- a new
ConcurrentReferenceHashMap.Reference
-
pollForPurge
@Nullable public @Nullable ConcurrentReferenceHashMap.Reference<K,V> pollForPurge()
返回任何已经被垃圾收集并且可以从*底层结构中清除的引用,如果没有引用需要清除,则返回null。 这个方法必须是线程安全的,最好是在返回*null时不阻塞。引用应该被返回一次,而且只有一次。- 返回:
- 清除的引用或
null。
-
-