Class MultiTaskQueue

All Implemented Interfaces:
Runnable
Direct Known Subclasses:
MultiJobTaskQueue

public class MultiTaskQueue extends OrderedTaskQueue
class to run heavy tasks one at a time
  • Method Details

    • getPercentQueue

      public static int getPercentQueue()
    • setPercentQueue

      public static void setPercentQueue(int percentQueue)
    • getCreateQueue

      public static MultiTaskQueue getCreateQueue(String name, int maxParallel)
      grab the queue
      Parameters:
      name - - must not be null
      maxParallel - ignored if <=0
      Returns:
      the queue to fill with tasks
    • setMaxParallel

      public void setMaxParallel(int maxParallel)
      Parameters:
      maxParallel -
    • getCurrentRunning

      public int getCurrentRunning()
      get the number of currently running tasks
      Returns:
    • interruptCurrent

      public boolean interruptCurrent(int minAge)
      Overrides:
      interruptCurrent in class OrderedTaskQueue
      Parameters:
      minAge - minimum age to interrupt
      Returns:
      true if we successfully interrupted or no entries were running
    • interruptTask

      public boolean interruptTask(Runnable theRunner)
      Parameters:
      theRunner - runner to zapp
      Returns:
      true if we successfully interrupted or no entries were running
    • start

      public void start()
      Overrides:
      start in class Thread
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class OrderedTaskQueue
      Returns:
      See Also:
    • getMaxParallel

      public int getMaxParallel()
      Returns:
      the maxParallel
    • shutDown

      public void shutDown()
      Overrides:
      shutDown in class OrderedTaskQueue
      See Also:
    • executing

      public int executing()
      Overrides:
      executing in class OrderedTaskQueue
      See Also: