并发可变优先级队列

时间:2012-08-23 13:44:38

标签: c++ algorithm data-structures concurrency priority-queue

是否存在并发可变优先级队列?理想情况下,我正在寻找一个C ++实现,但是,对于初学者来说,指向算法的指针会非常有用。

要清楚,我正在寻找一个优先级队列,我可以调整元素的优先级。特别是,TBB的concurrent_priority_queue没有提供必要的功能。 (就此而言,STL的priority_queue也没有,即使我们忽略了并发性。)Boost.Heap库提供了我想要的串行功能,但没有并发性。当然,我正在寻找比在每次操作中锁定整个队列更细粒度的东西。

1 个答案:

答案 0 :(得分:10)

并发优先级队列通常使用跳过列表来实现,因此Facebook的ConcurrentSkipList可能符合您的要求。