[英]Java FIFO queue implementation
有谁知道在Java中是否有FIFO队列实现,或者是否有其他库可以让用户设置最大大小,并在队列满时自动拒绝任何请求?
我看过番石榴队列的实现,但是从我所看到的来看,它会在队列满时删除队列中的第一个元素,而不是拒绝请求。
大多数内置队列都这样做。 我建议使用ArrayBlockingQueue,因为这自然适合有限的大小,但是您也可以使用LinkedBlockingQueue。 BlockingDeque也支持一个限制。
顺便说一句,如果您正在使用带有线程的队列,建议您使用ExecutorService,因为它将它们组合在一起。
在简单的队列上使用装饰器模式,例如:
Queue<String> queue = new LinkedList<String>();
包装器代码将确保最大大小被强制拒绝额外的添加。
int size=500;
Queue<String> = new ArrayBlockingQueue<>(size);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.