gpt4 book ai didi

c++ - 如何使 boost::lockfree::queue 动态调整大小

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:24:38 41 4
gpt4 key购买 nike

boost::lockfree::queue 的文档提到 push 可以在需要时分配更多空间。然而,我终其一生都无法弄清楚如何实例化这样一个队列,而且我找不到它的例子。 boost 网站上的所有示例都是固定容量的。

这是我正在查看的文档: http://www.boost.org/doc/libs/1_54_0/doc/html/boost/lockfree/queue.html

最佳答案

队列的默认大小是可变的。这由 typename ...Options 模板参数控制。

此外,还有一个错误,即使队列大小可变,队列也需要静态设置的容量。这可以通过使用采用初始容量的构造函数来避免。

可变大小的队列可以实例化为:

boost::lockfree::queue<T> newQueue(0);
// or equivalently:
boost::lockfree::queue<T, boost::lockfree::fixed_sized<false> > newQueue(0);

固定大小的队列必须将 fixed_sized 选项显式设置为 true 或使用 boost::lockfree::capacity 选项提供大小.

请参阅您链接到的文档开头附近的政策部分。

关于c++ - 如何使 boost::lockfree::queue 动态调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22891888/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com