Package org.springframework.util
Class ConcurrentReferenceHashMap.ReferenceManager
java.lang.Object
org.springframework.util.ConcurrentReferenceHashMap.ReferenceManager
- Enclosing class:
- ConcurrentReferenceHashMap<K,
V>
Strategy class used to manage
References
.
This class can be overridden if alternative reference types need to be supported.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncreateReference
(ConcurrentReferenceHashMap.Entry<K, V> entry, int hash, ConcurrentReferenceHashMap.Reference<K, V> next) Factory method used to create a newConcurrentReferenceHashMap.Reference
.Return any reference that has been garbage collected and can be purged from the underlying structure ornull
if no references need purging.
-
Constructor Details
-
ReferenceManager
protected ReferenceManager()
-
-
Method Details
-
createReference
public ConcurrentReferenceHashMap.Reference<K,V> createReference(ConcurrentReferenceHashMap.Entry<K, V> entry, int hash, @Nullable ConcurrentReferenceHashMap.Reference<K, V> next) Factory method used to create a newConcurrentReferenceHashMap.Reference
.- Parameters:
entry
- the entry contained in the referencehash
- the hashnext
- the next reference in the chain, ornull
if none- Returns:
- a new
ConcurrentReferenceHashMap.Reference
-
pollForPurge
Return any reference that has been garbage collected and can be purged from the underlying structure ornull
if no references need purging. This method must be thread safe and ideally should not block when returningnull
. References should be returned once and only once.- Returns:
- a reference to purge or
null
-