के साथ सबमिट और निष्पादन विधि के बीच क्या अंतर है, मैंने पाया कि थ्रेड पूल में रननेबल जोड़ने के लिए दो तरीके (सबमिट और निष्पादित) हैं, अंतर क्या है?ThreadPoolExecutor
29
A
उत्तर
30
अंतर यह है कि execute
Future
वापस नहीं करता है, इसलिए आप Runnable
के पूरा होने की प्रतीक्षा नहीं कर सकते हैं और इसका उपयोग करके कोई अपवाद प्राप्त कर सकते हैं।
1
सबमिट निष्पादन का एक और सामान्य रूप प्रतीत होता है। विशेष रूप से, सबमिट एक भविष्य वस्तु देता है जो गणना के परिणाम का प्रतिनिधित्व करता है।
14
submit(...)
विधि एक निष्पादक ढांचा विस्तार ExecutorService
इंटरफेस में शुरू की गई है।
execute(Runnable)
से इसका मुख्य अंतर यह है कि submit(...)
स्वीकार कर सकते हैं एक Callable<V>
(execute()
केवल Runnable
स्वीकार करता है, जबकि) और Future<V>
का एक उदाहरण देता है, आप बाद में फोन करने वाले में उपयोग कर सकते हैं जो एसिंक्रोनस रूप से (संभावित अवरुद्ध परिणाम पुनः प्राप्त करने के लिए जब तक गणना प्रदर्शन किया Callable
द्वारा पूरा किया गया है)।
संबंधित मुद्दे
- 1. ThreadPoolExecutor
- 2. ThreadPoolExecutor
- 3. ThreadPoolExecutor
- 4. ThreadPoolExecutor
- 5. ThreadPoolExecutor समस्या
- 6. ThreadPoolExecutor नीति
- 7. मल्टी थ्रेडिंग बनाम ThreadPoolExecutor
- 8. कार्य/कार्य चोरी ThreadPoolExecutor
- 9. Java ThreadPoolExecutor ArrayBlockingQueue
- 10. ThreadPoolExecutor और queue
- 11. एक कतार के बिना ThreadPoolExecutor
- 12. जावा में प्राथमिकता ThreadPoolExecutor (एंड्रॉइड)
- 13. कतार पूर्ण होने पर ThreadPoolExecutor ब्लॉक?
- 14. ThreadPoolExecutor के साथ कैसे रहते हैं?
- 15. जावा - ThreadPoolExecutor चल रहे कार्यों को रद्द करें
- 16. जावा ThreadPoolExecutor रणनीति, कतार के साथ 'डायरेक्ट हैंडऑफ'?
- 17. क्या मेरा ThreadPoolExecutor स्मृति लीक कर रहा है?
- 18. KeepAliveTime के बाद ThreadPoolExecutor CorePoolSize के नीचे धागे को कम क्यों करता है?
- 19. ThreadPoolExecutor के साथ, थ्रेड पूल में चल रहे धागे का नाम कैसे प्राप्त करें?
- 20. ThreadPoolExecutor में अलग कोर और अधिकतम पूल आकार निर्दिष्ट करते समय एक अच्छा विचार कब है?
- 21. ThreadPoolExecutor में सभी श्रमिकों को तुरंत समाप्त करने के लिए कैसे करें
- 22. ThreadPoolExecutor में पुराने कतारबद्ध कार्यों को कैसे निकालें और इसके बजाय नए कार्य सम्मिलित करें?
- 23. ThreadPoolExecutor के साथ इनहेरटेबल थ्रेडलोकल का उपयोग करना - या - एक थ्रेडपूलएक्सएटर जो थ्रेड का पुन: उपयोग नहीं करता है
- 24. यदि मैं बहुत अधिक डेटा पर काम करने की ज़रूरत है तो मैं ThreadPoolExecutor कमांड कैसे कर सकता हूं?
- 25. ग्रहण
- 26. इकाई परीक्षण कैसे करें कि निष्पादक सेवा कार्य के लिए नए धागे को जन्म देती है?
- 27. एक्जिक्यूटर्स सेवा
- 28. जावा
- 29. एक्लिप्स का उपयोग कर जावा (एंड्रॉइड) को सही तरीके से डिबग कैसे करें?
- 30. ArrayBlockingQueue
'भविष्य' आपको 'रननेबल' द्वारा फेंकने वाले अपवाद भी प्राप्त करने की अनुमति देता है। – axtavt
@axtavt: सच है, अनुमान है कि मुझे इसका भी उल्लेख करना चाहिए। – ColinD