मैं जावा 5 के ThreadPoolExecutor के लिए अलग कोर और अधिकतम पूल आकार निर्दिष्ट करने में बिंदु को समझने की कोशिश कर रहा हूं। मेरी समझ यह है कि कतार भरने के बाद धागे की संख्या में वृद्धि होती है, जो थोड़ी देर लगती है (कम से कम बड़ी कतारों के साथ)।ThreadPoolExecutor में अलग कोर और अधिकतम पूल आकार निर्दिष्ट करते समय एक अच्छा विचार कब है?
यह नहीं है कि मैं कार्यों में बड़ी संख्या में थ्रेड आवंटित करने में खुश हूं, इस मामले में मैं केवल कोर पूल आकार बढ़ा सकता हूं; या मैं ऐसा करने के लिए वास्तव में तैयार नहीं हूं, इस मामले में मुझे एक बड़ी कतार चाहिए? एक परिदृश्य क्या है जहां अलग कोर और अधिकतम पूल आकार उपयोगी हैं?
लेकिन तब मैं के साथ शुरू करने के लिए और अधिक धागे के साथ चला सकते हैं - अन्यथा मैं सिर्फ कतार में इंतजार कर रहे कार्यों के विलंबता जोड़ें। मुझे यह भी संदेह है कि कतार में भरने वाले कई परिदृश्यों में तेजी से भर सकता है, इस मामले में अतिरिक्त धागे बहुत देर हो सकते हैं। –
@ पीटर, यदि आपका स्थिर विश्लेषण पर्याप्त भार में उपयोग करने के लिए धागे की सही संख्या की भविष्यवाणी करने के लिए पर्याप्त है और आप सामान्य लोड के दौरान बैठे अतिरिक्त अतिरिक्त थ्रेड रखने से खुश हैं तो इसके लिए जाएं! यह कम लोड में लोड या अतिरिक्त संसाधन उपयोग के तहत एक-ऑफ थ्रेड स्पिन-अप समय के बीच एक व्यापार-बंद है। – Bringer128