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.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic 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.InterruptedExceptionjava.util.concurrent.ExecutionExceptionpublic 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.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutExceptionpublic void run()