Class IndexedPriorityQueue<E>

java.lang.Object
io.trino.execution.resourcegroups.IndexedPriorityQueue<E>
All Implemented Interfaces:
Iterable<E>

public final class IndexedPriorityQueue<E> extends Object
A priority queue with constant time contains(E) and log time remove(E) Ties are broken by insertion order
  • Constructor Details

  • Method Details

    • addOrUpdate

      public boolean addOrUpdate(E element, long priority)
    • contains

      public boolean contains(E element)
    • remove

      public boolean remove(E element)
    • poll

      public E poll()
    • getPrioritized

      public IndexedPriorityQueue.Prioritized<E> getPrioritized(E element)
    • pollPrioritized

      public IndexedPriorityQueue.Prioritized<E> pollPrioritized()
    • peek

      public E peek()
    • peekPrioritized

      public IndexedPriorityQueue.Prioritized<E> peekPrioritized()
    • peekEntry

      public io.trino.execution.resourcegroups.IndexedPriorityQueue.Entry<E> peekEntry()
    • size

      public int size()
    • isEmpty

      public boolean isEmpty()
    • iterator

      public Iterator<E> iterator()
      Specified by:
      iterator in interface Iterable<E>