首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >具有提供和刷新功能的非阻塞并发队列

具有提供和刷新功能的非阻塞并发队列
EN

Stack Overflow用户
提问于 2015-04-22 01:13:35
回答 3查看 2K关注 0票数 18

具有提供和刷新功能的非阻塞并发队列

我需要一个无界的非阻塞并发队列,基本上只有2个操作:

  • offer :原子地将指定项插入到此队列的尾部;
  • flush:获取队列中该时刻出现的所有项,并按照插入顺序逐个开始处理它们。更具体地说,必须是原子的只是这个"takeAll“操作,它将是刷新的第一个操作。在takeAll之后提供给队列的所有项都将被插入,然后仅由另一个后续刷新进行处理。

目标是使用者在takeAll上有一个CAS操作,然后可以迭代列表中的元素,而不需要在每次读取时执行CAS操作。此外,我们已经拥有了Node (Entry),因为需要它来存储其他一些不可变的状态。新节点可以将头部作为构造函数参数,从而创建一个单向链表。

文献中是否存在具有这些特征的队列?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29778921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档