Package org.apache.cassandra.concurrent
-
Interface Summary Interface Description DebuggableTask Interface to include on a Runnable or Callable submitted to theSharedExecutorPool
to provide more detailed diagnostics.DebuggableTask.CallableDebuggableTask<T> DebuggableTask.RunnableDebuggableTask ExecutorBuilder<E extends java.util.concurrent.ExecutorService> Configure an executor before creating it.ExecutorBuilderFactory<E extends ExecutorPlus,S extends SequentialExecutorPlus> Entry point for configuring and creating new executors.ExecutorBuilderFactory.Jmxable<E extends ExecutorPlus,S extends SequentialExecutorPlus> Entry point for configuring and creating new executors.ExecutorFactory Entry point for configuring and creating new executors.ExecutorFactory.LocalAwareSubFactory ExecutorFactory.LocalAwareSubFactoryWithJMX ExecutorPlus Cassandra's extension ofExecutorService
, using our ownFuture
, supportingExecutorPlus.inExecutor()
, and execution with associated resourcesExecutorPlus.execute(WithResources, Runnable)
(which is primarily used for encapsulatingExecutorLocals
without leaking implementing classes).ExecutorPlus.MaximumPoolSizeListener Interruptible Interruptible.SimpleTask A Task that only runs on NORMAL statesInterruptible.Task LocalAwareExecutorPlus AnExecutorPlus
that is aware of, and propagates to execution, any ExecutorLocalsLocalAwareSequentialExecutorPlus ASequentialExecutorPlus
that is aware of, and propagates to execution, any ExecutorLocalsResizableThreadPool ResizableThreadPoolMXBean ScheduledExecutorPlus SEPExecutorMBean SequentialExecutorPlus AnExecutorPlus
that guarantees the order of execution matches the order of task submission, and provides a simple mechanism for the recurring pattern of ensuring a job is executed at least once after some point in time (i.e.SequentialExecutorPlus.AtLeastOnceTrigger Shutdownable Stage.ExecutorServiceInitialiser TaskFactory A simple mechanism to impose our desired semantics on the execution of a task without requiring a specialised executor service. -
Class Summary Class Description DebuggableTask.RunningDebuggableTask Wraps aDebuggableTask
to include the name of the thread running it.ExecutionFailure Standardised handling of failures during execution - mostly this involves invoking a thread'sThread.UncaughtExceptionHandler
orJVMStabilityInspector.uncaughtException(Thread, Throwable)
, with special handling forCompactionInterruptedException
.ExecutorFactory.Default ExecutorFactory.Global ExecutorLocals ExecutorLocals.Impl FutureTask<V> A FutureTask that utilises Cassandra'sAsyncFuture
, making it compatible withExecutorPlus
.FutureTaskWithResources<V> A FutureTask that utilises Cassandra'sAsyncFuture
, making it compatible withExecutorPlus
.ImmediateExecutor InfiniteLoopExecutor LocalAwareSingleThreadExecutorPlus LocalAwareThreadPoolExecutorPlus NamedThreadFactory This class is an implementation of the ThreadFactory interface.NamedThreadFactory.MetaFactory ScheduledExecutors Centralized location for shared executorsScheduledThreadPoolExecutorPlus Like ExecutorPlus, ScheduledThreadPoolExecutorPlus always logs exceptions from the tasks it is given, even if Future.get is never called elsewhere.SEPExecutor SharedExecutorPool A pool of worker threads that are shared between all Executors created with it.SingleThreadExecutorPlus SingleThreadExecutorPlus.AtLeastOnce SyncFutureTask<T> TaskFactory.LocalAware TaskFactory.Standard ThreadPoolExecutorBase This class incorporates some Executor best practices for Cassandra.ThreadPoolExecutorBuilder<E extends ExecutorPlus> Configure aThreadPoolExecutorPlus
, applying Cassandra's best practices by default Core threads may timeout, and use a defaultThreadPoolExecutorBuilder.keepAlive
time inThreadPoolExecutorBuilder.keepAliveUnits
Threads share the sameThreadGroup
, which may be configurably a child of a specifiedThreadGroup
descended from the same parent of theNamedThreadFactory.MetaFactory
By default queues are unbounded in length The defaultRejectedExecutionHandler
is implementation dependent, but may be overridden The defaultThread.UncaughtExceptionHandler
is inherited fromNamedThreadFactory.MetaFactory
, which in turn receives it from theExecutorBuilderFactory
ThreadPoolExecutorJMXAdapter AThreadPoolExecutorBase
adapter to expose it via JMX.ThreadPoolExecutorPlus This class inherits Executor best practices fromThreadPoolExecutorBase
andThreadPoolExecutorBuilder
.WrappedExecutorPlus -
Exception Summary Exception Description Interruptible.TerminateException