Class BoundedLocalCache.PerformCleanupTask
- java.lang.Object
-
- java.util.concurrent.ForkJoinTask<java.lang.Void>
-
- com.github.benmanes.caffeine.cache.BoundedLocalCache.PerformCleanupTask
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Runnable
,java.util.concurrent.Future<java.lang.Void>
- Enclosing class:
- BoundedLocalCache<K,V>
final class BoundedLocalCache.PerformCleanupTask extends java.util.concurrent.ForkJoinTask<java.lang.Void> implements java.lang.Runnable
A reusable task that performs the maintenance work; used to avoid wrapping by ForkJoinPool.
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description PerformCleanupTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
cancel(boolean mayInterruptIfRunning)
void
complete(java.lang.Void value)
void
completeExceptionally(java.lang.Throwable ex)
boolean
exec()
java.lang.Void
getRawResult()
This method cannot be ignored due to being final, so a hostile user supplied Executor could forcibly complete the task and halt future executions.void
run()
void
setRawResult(java.lang.Void v)
-
Methods inherited from class java.util.concurrent.ForkJoinTask
adapt, adapt, adapt, compareAndSetForkJoinTaskTag, fork, get, get, getException, getForkJoinTaskTag, getPool, getQueuedTaskCount, getSurplusQueuedTaskCount, helpQuiesce, inForkJoinPool, invoke, invokeAll, invokeAll, invokeAll, isCancelled, isCompletedAbnormally, isCompletedNormally, isDone, join, peekNextLocalTask, pollNextLocalTask, pollSubmission, pollTask, quietlyComplete, quietlyInvoke, quietlyJoin, reinitialize, setForkJoinTaskTag, tryUnfork
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Method Detail
-
exec
public boolean exec()
- Specified by:
exec
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
-
getRawResult
public java.lang.Void getRawResult()
This method cannot be ignored due to being final, so a hostile user supplied Executor could forcibly complete the task and halt future executions. There are easier ways to intentionally harm a system, so this is assumed to not happen in practice.- Specified by:
getRawResult
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
setRawResult
public void setRawResult(java.lang.Void v)
- Specified by:
setRawResult
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
complete
public void complete(java.lang.Void value)
- Overrides:
complete
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
completeExceptionally
public void completeExceptionally(java.lang.Throwable ex)
- Overrides:
completeExceptionally
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
cancel
public boolean cancel(boolean mayInterruptIfRunning)
- Specified by:
cancel
in interfacejava.util.concurrent.Future<java.lang.Void>
- Overrides:
cancel
in classjava.util.concurrent.ForkJoinTask<java.lang.Void>
-
-