c++ - 并发可变优先级队列

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

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

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

最佳答案

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

关于c++ - 并发可变优先级队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12093053/

相关文章:

c++ - GLEW 1.10.0段错误

algorithm - 从数组中提取前 N 个唯一整数

c# - 仅当所有 ID 或更多 ID 都存在时才查找两个不同列表对象之间的匹配 ID?

algorithm - 比较周期性数据的快速方法

c - 从列表中删除节点时出现问题

algorithm - 如果有大量照片,图像文件夹的结构有多重要?

c++ - QWidget 背景图片问题 (Qt Creator)

c++ - 将 include 指令合并到一个文件中是一种好习惯吗

c++ - Constexpr、模板和数组大小

algorithm - 如何为 HashSet/HashMap 实现哈希函数