繁体   English   中英

Java中的动态缓冲区

[英]Dynamic buffer in java

我正在寻找的是某种动态缓冲,我尝试解释一下:

应该可以在缓冲区的末尾添加一些值。 而且,尽管它在缓冲区的末尾添加了值,但我应该能够从缓冲区的开头获取一些值。

所以像这样的伪代码:

ThreadA
while(true):
   buffer.pushToEnd(random);

ThreadB
while(true):
   buffer.popFromBeginning();

因此,我弹出的值应从缓冲区中删除。 我在互联网上四处寻找,发现了各种缓冲区类型,但是它们都不能够以这种方式起作用。

所以我的问题是:是否存在此缓冲区行为的某些本机Java实现? 还是一些实现的示例代码?

您正在描述FIFO 队列数据结构。

Java 确实包含了这样的容器类以及您所需的方法。 还要看看线程安全的变体ConcurrentLinkedQueue

此外,您想做的事情看起来很像生产者-消费者问题 链接的Wikipedia页面可能是一个很好的起点。

您应该使用Java Queue A FIFO数据容器。 添加到容器的第一件事是弹出的内容。 先进先出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM