जावाडोक से:जावा कतार कार्यान्वयन, कौन सा?
- एक ConcurrentLinkedQueue जब कई धागे एक आम संग्रह के लिए उपयोग साझा करेंगे एक उपयुक्त विकल्प है। यह कतार शून्य तत्वों की अनुमति नहीं देती है।
- ArrayBlockingQueue जिसमें एक निश्चित आकार सरणी निर्माताओं द्वारा डाला जाता है और उपभोक्ताओं द्वारा निकाले तत्वों रखती है एक क्लासिक "बफ़र घिरा" है। इस वर्ग इंतजार कर उत्पादक और उपभोक्ता धागे
- LinkedBlockingQueue आदेश देने के लिए एक वैकल्पिक निष्पक्षता नीति का समर्थन करता है आम तौर पर सरणी-आधारित कतारों लेकिन सबसे समवर्ती अनुप्रयोगों में कम पूर्वानुमान प्रदर्शन की तुलना में अधिक प्रवाह क्षमता है।
मेरे पास 2 परिदृश्य हैं, एक को उपभोक्ता के साथ कई उत्पादकों (इसका उपयोग करने वाले थ्रेड) का समर्थन करने के लिए कतार की आवश्यकता होती है और दूसरी तरफ दूसरी तरफ है।
मैं समझ नहीं कर रहा हूँ कि क्या मैं ConcurrentLikedQueue
या अन्य लोगों (सरणी या linkedlist कार्यान्वयन) का उपयोग करना चाहिए। Wherent 'यह सभी कार्यान्वयन समवर्ती माना जाना चाहिए? मेरा मतलब है, किसी ने मुझसे व्याख्या कर सकते हैं ConcurrentLikedQueue
और LinkedBlockingQueue
के बीच अंतर क्या है?
इसके अलावा, क्या वैकल्पिक निष्पक्षता नीति बात ArrayBlockingQueue
में कृपया है?
क्या आप वाकई यह एक समुदाय विकी होना चाहिए? ये प्रश्न ध्वनि की तरह लगता है कि उनके पास एक निश्चित उत्तर है। मैं गलत हो सकता था ... –
@ एडम, धन्यवाद, आप कठोर हैं, आमतौर पर मैंने इसे कॉम्यूनिटी विकी के रूप में छोड़ दिया क्योंकि मैंने लोगों को अपनी अंग्रेजी को सही करने के रूप में देखा क्योंकि यह सामान्य रूप से ठीक नहीं है। लेकिन अब ऐसा लगता है कि साइट मुझे 'कॉम्यूनिटी विकी' चेकबॉक्स को पूर्ववत करने की अनुमति नहीं देती है –
@ डेविड: लोग अभी भी आपके प्रश्न को संपादित कर सकते हैं भले ही यह एक समुदाय विकी न हो। जब कोई प्रश्न एक समुदाय विकी होता है, तो उत्तर देने वाले लोगों में से कोई भी प्रतिष्ठा अंक प्राप्त नहीं करेगा (भले ही अन्य उत्तर उत्तर दें)। उम्मीद है कि यह भविष्य के लिए चीजों को साफ़ करता है। :) –