Class MultiTaskQueue

  • All Implemented Interfaces:
    java.lang.Runnable
    Direct Known Subclasses:
    MultiJobTaskQueue

    public class MultiTaskQueue
    extends OrderedTaskQueue
    class to run heavy tasks one at a time
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.lang.Thread

        java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
    • Field Summary

      • Fields inherited from class java.lang.Thread

        MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
    • Method Detail

      • getPercentQueue

        public static int getPercentQueue()
      • setPercentQueue

        public static void setPercentQueue​(int percentQueue)
      • getCreateQueue

        public static MultiTaskQueue getCreateQueue​(java.lang.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​(java.lang.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 java.lang.Thread
        See Also:
        Thread.start()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class OrderedTaskQueue
        Returns:
        See Also:
        Thread.toString()
      • getMaxParallel

        public int getMaxParallel()
        Returns:
        the maxParallel