मेरे द्वारा पोस्ट किए गए question की निरंतरता में, मैं अपने कोडबेस में ThreadPoolExecutor का उपयोग करने का प्रयास कर रहा हूं। जावा एपीआई दस्तावेज़ से समझने के बार-बार प्रयास करने के बाद भी, मैं कन्स्ट्रक्टर में पास होने के लिए keepAliveTime
पैरामीटर के पीछे कार्यक्षमता/उद्देश्य को स्पष्ट रूप से समझने में विफल रहा। उम्मीद है कि कोई मुझे कुछ अच्छे कामकाजी उदाहरण के साथ समझा सकता है।ThreadPoolExecutor के साथ कैसे रहते हैं?
अंशः जावा दस्तावेज़ से:
public ThreadPoolExecutor(int corePoolSize,
int maximumPoolSize,
long keepAliveTime,
TimeUnit unit,
BlockingQueue<Runnable> workQueue)
keepAliveTime
- जब धागे की संख्या कोर से अधिक है, यह अधिक से अधिक समय है कि अतिरिक्त निष्क्रिय धागे नए कार्य के लिए इंतजार करेंगे है समाप्त करने से पहले।
दर्शाता है बस के रूप में शब्दावली का एक मुद्दा है, तो आप दो बार शब्द का उपयोग किया है जब मुझे लगता है कि तुम सिर्फ मतलब है "उपयोग" "लागू" है। आप * एपीआई को लागू करने वाले अपने कोड को लिखकर * थ्रेडपूल एक्स्सेलर 'को कार्यान्वित करने की कोशिश नहीं कर रहे हैं - आप केवल' थ्रेडपूल एक्स्सेलर 'बना रहे हैं और आप जानना चाहते हैं कि यह कैसे व्यवहार करेगा, है ना? –
हां, आप सही हैं। मैं बस इसका मतलब यह था कि यह मेरे कोडबेस में एक नया प्रकार का कार्यान्वयन है। – Gnanam
लेकिन यह * 'ThreadPoolExecutor' का कार्यान्वयन * नहीं है। यह वास्तव में सहायक है यदि आप उचित रूप से शब्दावली का उपयोग कर सकते हैं - * विशेष रूप से * स्टैक ओवरफ़्लो पर। –