是否有并发的可变优先级队列?理想情况下,我正在寻找 C++ 实现,但对于初学者来说,指向算法的指针会很有帮助。
明确地说,我正在寻找一个可以调整元素优先级的优先级队列。特别是,TBB 的 concurrent_priority_queue
没有提供必要的功能。 (就此而言,STL 的 priority_queue
也没有,即使我们忽略了并发性。)Boost.Heap库提供了我想要的串行功能,但没有并发。自然,我正在寻找比在每个操作上锁定整个队列更细粒度的东西。
最佳答案
并发优先级队列通常使用跳过列表来实现,因此 Facebook 的 ConcurrentSkipList可能符合您的要求。
关于c++ - 并发可变优先级队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12093053/