private class LRUHybridCache.OriginThreadAwareFuture extends java.lang.Object implements java.util.concurrent.Future<HybridCacheEntry<V>>
Modifier and Type | Field and Description |
---|---|
private java.util.concurrent.FutureTask<HybridCacheEntry<V>> |
future |
private K |
key |
private long |
lastHit |
private long |
threadId |
Constructor and Description |
---|
OriginThreadAwareFuture(LRUHybridCache<K,HybridCacheEntry<V>> cache,
K key) |
Modifier and Type | Method and Description |
---|---|
boolean |
cancel(boolean mayInterruptIfRunning) |
boolean |
equals(java.lang.Object obj) |
HybridCacheEntry<V> |
get() |
HybridCacheEntry<V> |
get(long timeout,
java.util.concurrent.TimeUnit unit) |
int |
hashCode() |
boolean |
isCancelled() |
boolean |
isDone() |
void |
run() |
private final K key
private final java.util.concurrent.FutureTask<HybridCacheEntry<V>> future
private volatile long threadId
private volatile long lastHit
OriginThreadAwareFuture(LRUHybridCache<K,HybridCacheEntry<V>> cache, K key)
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public boolean cancel(boolean mayInterruptIfRunning)
cancel
in interface java.util.concurrent.Future<HybridCacheEntry<V>>
public boolean isCancelled()
isCancelled
in interface java.util.concurrent.Future<HybridCacheEntry<V>>
public boolean isDone()
isDone
in interface java.util.concurrent.Future<HybridCacheEntry<V>>
public HybridCacheEntry<V> get() throws java.lang.InterruptedException, java.util.concurrent.ExecutionException
get
in interface java.util.concurrent.Future<HybridCacheEntry<V>>
java.lang.InterruptedException
java.util.concurrent.ExecutionException
public HybridCacheEntry<V> get(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException
get
in interface java.util.concurrent.Future<HybridCacheEntry<V>>
java.lang.InterruptedException
java.util.concurrent.ExecutionException
java.util.concurrent.TimeoutException
public void run()