K - V - public class AssistTimedMapImpl<K,V> extends Object implements AssistTimedMap<K,V>
AssistTimedMap.RemoveAssister<K,V>, AssistTimedMap.TimeOutAssister<K,V>, AssistTimedMap.TtlAssister<K,V>| 限定符和类型 | 字段和说明 |
|---|---|
protected org.slf4j.Logger |
log |
| 构造器和说明 |
|---|
AssistTimedMapImpl()
默认最大2个线程处理监听器
迭代的时候也更新ttl
|
AssistTimedMapImpl(boolean iteratorUpdate) |
AssistTimedMapImpl(Executor cleanExecutor,
boolean iteratorUpdate)
建议线程池固定大小,否则移除事件过多会消耗很多线程资源
|
| 限定符和类型 | 方法和说明 |
|---|---|
Map<K,V> |
cleanExpire()
清理过期,返回被清理的键值对
不需要不定时清理,建议在容量达到某大小时清理
|
void |
clear() |
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
Set<Map.Entry<K,V>> |
entrySet() |
V |
get(Object key) |
V |
getBy(K key) |
Runnable |
getCleanTask()
获取清理超时的任务,执行后将会触发监听器执行
|
boolean |
isEmpty() |
boolean |
isIteratorUpdate() |
Set<K> |
keySet() |
V |
put(K key,
V value)
存放一个键值对
|
V |
put(K key,
V value,
AssistTimedMap.TimeOutAssister<K,V> tAssister,
AssistTimedMap.RemoveAssister<K,V> rAssister)
存放一个键值对,该键值超时访问自动删除
|
V |
put(K key,
V value,
long ttl)
存放一个键值对,该键值超时访问自动删除
|
void |
putAll(Map<? extends K,? extends V> m) |
V |
remove(Object key) |
protected net.jueb.util4j.collection.map.AssistTimedMapImpl.AssistTimedEntry<K,V> |
removeAndListener(Object key,
boolean expire)
移除缓存对象并通知事件
|
V |
removeBy(K key) |
void |
setIteratorUpdate(boolean iteratorUpdate) |
int |
size() |
Collection<V> |
values() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitputcompute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAllpublic AssistTimedMapImpl()
public AssistTimedMapImpl(boolean iteratorUpdate)
iteratorUpdate - 是否在迭代的时候也更新ttlpublic AssistTimedMapImpl(Executor cleanExecutor, boolean iteratorUpdate)
cleanExecutor - 指定处理超时监听的executoriteratorUpdate - 是否在迭代的时候也更新ttlpublic Runnable getCleanTask()
getCleanTask 在接口中 AssistTimedMap<K,V>public Map<K,V> cleanExpire()
AssistTimedMapcleanExpire 在接口中 AssistTimedMap<K,V>protected net.jueb.util4j.collection.map.AssistTimedMapImpl.AssistTimedEntry<K,V> removeAndListener(Object key, boolean expire)
key - expire - 是否超时才执行的移除public boolean isIteratorUpdate()
public void setIteratorUpdate(boolean iteratorUpdate)
public boolean containsKey(Object key)
containsKey 在接口中 Map<K,V>public boolean containsValue(Object value)
containsValue 在接口中 Map<K,V>public V put(K key, V value)
AssistTimedMappublic V put(K key, V value, long ttl)
AssistTimedMapput 在接口中 AssistTimedMap<K,V>ttl - 超时毫秒public V put(K key, V value, AssistTimedMap.TimeOutAssister<K,V> tAssister, AssistTimedMap.RemoveAssister<K,V> rAssister)
AssistTimedMapput 在接口中 AssistTimedMap<K,V>tAssister - 超时助理rAssister - 移除助理Copyright © 2020. All rights reserved.