ArrayBlockingQueue तत्वों को FIFO क्रम में संग्रहीत करता है। तत्व का सम्मिलन हमेशा कतार के टेल पर होता है और तत्व का निष्कासन हमेशा कतार के हेड से होता है। यह थ्रेड-सेफ है और यह एक बाउंडेड सरणी कतार है इसलिए एक बार बनाने के बाद, क्षमता को बदला नहीं जा सकता। यह BlockingQueue इंटरफेस का कार्यान्वयन है।
जावा डॉक्स के अनुसार -
Deque इंटरफेस का रिसाइज़ेबल-सरणी कार्यान्वयन। Array deques की कोई क्षमता प्रतिबंध नहीं है; वे उपयोग का समर्थन करने के लिए आवश्यकतानुसार बढ़ते हैं। वे थ्रेड-सेफ नहीं हैं; बाहरी सिंक्रनाइज़ेशन के अभाव में, वे एकाधिक थ्रेड्स द्वारा समवर्ती एक्सेस का समर्थन नहीं करते हैं। नल तत्व निषिद्ध हैं। यह क्लास स्टैक के रूप में उपयोग किए जाने पर Stack से तेज़ होने की संभावना है, और कतार के रूप में उपयोग किए जाने पर LinkedList से तेज़ है।
| क्र. सं. | मुख्य बिंदु | ArrayBlockingQueue | ArrayDeque |
|---|---|---|---|
| 1 | बेसिक | यह BlockingQueue इंटरफेस को लागू करता है | यह Deque इंटरफेस को लागू करता है |
| 2 | बाउंडेड | यह बाउंडेड सरणी कतार है। इसलिए एक बार बनाने के बाद, क्षमता को बदला नहीं जा सकता | यह Deque का रिसाइज़ेबल-सरणी कार्यान्वयन है |
| 3 | थ्रेड सेफ | यह थ्रेड सेफ है | यह थ्रेड सेफ नहीं है |
| 4 | सम्मिलन/निष्कासन | तत्व का सम्मिलन हमेशा कतार के टेल पर होता है और तत्व का निष्कासन हमेशा कतार के हेड से होता है | यह दोनों छोरों पर तत्व सम्मिलन और निष्कासन का समर्थन करता है |