Class ConcurrentApproximatePriorityQueue<T>

java.lang.Object
org.apache.lucene.index.ConcurrentApproximatePriorityQueue<T>

final class ConcurrentApproximatePriorityQueue<T> extends Object
Concurrent version of ApproximatePriorityQueue, which trades a bit more of ordering for better concurrency by maintaining multiple sub ApproximatePriorityQueues that are locked independently. The number of subs is computed dynamically based on hardware concurrency.
  • Field Details

  • Constructor Details

    • ConcurrentApproximatePriorityQueue

      ConcurrentApproximatePriorityQueue()
    • ConcurrentApproximatePriorityQueue

      ConcurrentApproximatePriorityQueue(int concurrency)
  • Method Details

    • getConcurrency

      private static final int getConcurrency()
    • add

      void add(T entry, long weight)
    • poll

      T poll(Predicate<T> predicate)
    • contains

      boolean contains(Object o)
    • remove

      boolean remove(Object o)