Class PriorityQueueScheduler

  • All Implemented Interfaces:
    QueueScheduler, java.lang.Iterable<Job>, java.util.Collection<Job>, java.util.concurrent.BlockingQueue<Job>, java.util.Queue<Job>

    public class PriorityQueueScheduler
    extends AbstractPriorityQueueScheduler
    This class provides an implementation of scheduler with a priority sensitive queue.

    Jobs with higher priority will be processed first.

    Author:
    Maksim Tkachenko, Ween Jiann Lee
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Job poll()  
      Job poll​(long timeout, java.util.concurrent.TimeUnit unit)  
      • Methods inherited from class java.util.AbstractQueue

        add, addAll, clear, element, remove
      • Methods inherited from class java.util.AbstractCollection

        contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.concurrent.BlockingQueue

        add, contains, remove
      • Methods inherited from interface java.util.Collection

        addAll, clear, containsAll, equals, hashCode, isEmpty, parallelStream, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface java.util.Queue

        element, remove
    • Constructor Detail

      • PriorityQueueScheduler

        public PriorityQueueScheduler()
    • Method Detail

      • poll

        public final Job poll​(long timeout,
                              @Nonnull
                              java.util.concurrent.TimeUnit unit)
                       throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException
      • poll

        public final Job poll()