Class TaskSchedulers

java.lang.Object
dev.ua.theroer.magicutils.platform.TaskSchedulers

public final class TaskSchedulers extends Object
Factory utilities for TaskScheduler.
  • Method Details

    • newSingleThreadScheduler

      public static ScheduledExecutorService newSingleThreadScheduler(String threadName)
      Creates a single-thread ScheduledExecutorService with a named daemon thread.
      Parameters:
      threadName - name for the backing thread
      Returns:
      new single-thread scheduled executor
    • newManagedScheduler

      public static ManagedScheduler newManagedScheduler(String threadName)
      Creates a single-thread ManagedScheduler with a named daemon thread. The returned scheduler implements AutoCloseable, making it compatible with MagicRuntime.manage() for automatic shutdown on runtime close.
      Parameters:
      threadName - name for the backing thread
      Returns:
      new managed single-thread scheduler
    • newFixedPool

      public static ExecutorService newFixedPool(String threadPrefix, int poolSize)
      Creates a fixed-size thread pool with named daemon threads.
      Parameters:
      threadPrefix - prefix for thread names (threads are named prefix-1, prefix-2, etc.)
      poolSize - number of threads
      Returns:
      new fixed thread pool
    • newManagedPool

      public static ManagedExecutor newManagedPool(String threadPrefix, int poolSize)
      Creates a fixed-size ManagedExecutor with named daemon threads. The returned executor implements AutoCloseable, making it compatible with MagicRuntime.manage() for automatic shutdown on runtime close.
      Parameters:
      threadPrefix - prefix for thread names
      poolSize - number of threads
      Returns:
      new managed fixed thread pool
    • shared

      public static TaskScheduler shared()
      Returns the shared scheduler instance.
      Returns:
      shared scheduler
    • create

      public static TaskScheduler create(String name, @Nullable @Nullable ShutdownHookRegistrar shutdownRegistrar)
      Creates a new scheduler and registers shutdown if possible.
      Parameters:
      name - name prefix for threads
      shutdownRegistrar - optional shutdown registrar
      Returns:
      newly created scheduler