Class ExecutorFactoryCassandraSEPImpl

    • Field Detail

      • SHARED

        public static final org.apache.cassandra.concurrent.JMXEnabledSharedExecutorPool SHARED
        Create a shared executor pool for all of the threads used in this class TODO: Make this into a map of separate pools per daemon?
    • Constructor Detail

      • ExecutorFactoryCassandraSEPImpl

        public ExecutorFactoryCassandraSEPImpl()
    • Method Detail

      • newExecutor

        public ExecutorService newExecutor​(int threads,
                                           String daemonName,
                                           String executorName)
        Description copied from interface: ExecutorFactory
        Construct a new ExecutorService with an unbounded queue size ({@link Integer#MAX_VALUE). For CPU-intensive tasks, it is a good idea to use the value of {@link Runtime#availableProcessors()} (or a reasonable multiple of it based on the tasks) for the threads parameter to ensure that the CPU is fully utilized.
        Specified by:
        newExecutor in interface ExecutorFactory
        Returns:
        An ExecutorService pool
      • newExecutor

        public ExecutorService newExecutor​(int threads,
                                           int queueSize,
                                           String daemonName,
                                           String executorName)
        Description copied from interface: ExecutorFactory
        Construct a new ExecutorService with a specified queue size for the backlog of tasks. When the queue is full, the pool may block, discard the incoming task, or throw an exception. This behavior is dependent on the implementation of the ExecutorService. For CPU-intensive tasks, it is a good idea to use the value of Runtime.availableProcessors() (or a reasonable multiple of it based on the tasks) for the threads parameter to ensure that the CPU is fully utilized.
        Specified by:
        newExecutor in interface ExecutorFactory
        Returns:
        An ExecutorService pool