簡體   English   中英

Java FIFO隊列實現

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM