PriorityBlockingQueue

时间:2020-01-09 10:36:27  来源:igfitidea点击:

PriorityBlockingQueue类实现了BlockingQueue接口。阅读BlockingQueue文本以获取有关该接口的更多信息。

" PriorityBlockingQueue"是一个无限制的并发队列。它使用与java.util.PriorityQueue类相同的排序规则。我们不能在此队列中插入null。

插入" PriorityBlockingQueue"中的所有元素都必须实现" java.lang.Comparable"接口。因此,元素根据我们在"可比较"实现中确定的优先级进行排序。

注意,PriorityBlockingQueue不会对具有相同优先级(compare()== 0)的元素实施任何特定的行为。

还要注意,如果从" PriorityBlockingQueue"获得" Iterator",则" Iterator"不能保证按优先级顺序迭代元素。

这是一个如何使用PriorityBlockingQueue的例子:

BlockingQueue<String> queue   = new PriorityBlockingQueue<String>();

    //String implements java.lang.Comparable
    queue.put("Value");

    String value = queue.take();