表格如何做网站,做网站哪些,商务网站的功能和建设,企业网站备案需要moodycamel::ConcurrentQueue介绍
moodycamel::ConcurrentQueue一个用C++11实现的多生产者、多消费者无锁队列。 它具有以下特点: 1.快的让人大吃一惊,详见不同无锁队列之间的压测对比 2.单头文件实现,很容易集成到你的项目中 3.完全线程安全的无锁队列,支持任意线程数的并…moodycamel::ConcurrentQueue介绍
moodycamel::ConcurrentQueue一个用C++11实现的多生产者、多消费者无锁队列。 它具有以下特点: 1.快的让人大吃一惊,详见不同无锁队列之间的压测对比 2.单头文件实现,很容易集成到你的项目中 3.完全线程安全的无锁队列,支持任意线程数的并发 4.用C++11实现,尽可能move元素,而不是copy元素 5.模板化,无需专门处理指针,内部自动管理内存 6.对元素类型或最大计数没有人为限制 7.内存可以预先一次分配,也可以根据需要动态分配 8.跨平台,所有操作都通过标准C++11原语完成 9.支持超快批量操作 10.包括低开销阻塞版本(BlockingConcurrentQueue) 11.异常安全 现实中,很少见到用C++实现的完全无锁队列。Boost有一个——boost::lockfree::queue,但它仅限于具有简单赋值运算符和简单析构函数的对象。Intel的TBB(tbb::concurrent_queue)队列不是无锁的,也需要简单的构造函数。有许多学术论文声称用C++实现了无锁队列,但很难找到可用的源代码,对源码的测试就更难找到了。 这个队列不仅比其他队列(在大多数情况下)具有更少的限制,而且速度更快。它经过了良好的测试,并提供了诸如批量入队/出队等高级功能。 简而言之,在C++开源世界中有一个关于无锁队列的空白,我用我所能做到的最快、最完整、测试良