Interface SchedulerServiceProviderHolder.SchedulerProvider

Enclosing class:
SchedulerServiceProviderHolder

public static interface SchedulerServiceProviderHolder.SchedulerProvider

Provider for thread pools which allow scheduling capabilities. It is expected that the thread pools entire lifecycle (start to stop) is done through the same provider instance.

  • Method Details

    • getScheduler

      DynamicSizedSchedulerInterface getScheduler(int minimumThreads, String poolName, int maximumPoolSize)
      Request to get a scheduler with a minimum number of AVAILABLE threads.
      Parameters:
      minimumThreads - Minimum number of available threads for the returned scheduler
      poolName - name of pool to identify threads
      maximumPoolSize - maximum pool size
      Returns:
      A new scheduler that is ready to accept tasks
    • getFixedSizeScheduler

      ScheduledExecutorService getFixedSizeScheduler(int minimumThreads, String poolName)
    • getTimeoutScheduler

      ScheduledThreadPoolExecutor getTimeoutScheduler()
      Default Timeout scheduler.

      This is a one Thread fixed sized scheduler. This specific scheduler is using java 1.7 RemoveOnCancelPolicy, so the task are removed from queue permitting to avoid memory consumption [CONJ-297]

      Returns:
      A new scheduler that is ready to accept tasks
    • getBulkScheduler

      ThreadPoolExecutor getBulkScheduler()