मुझे आश्चर्य है, जावा 1.6 x64 में प्रतीक्षा स्थिति में कई धागे कितना महंगा है।कितने संसाधन सोते हैं और प्रतीक्षा थ्रेड
अधिक विशिष्ट होने के लिए, मैं ऐसे एप्लिकेशन लिख रहा हूं जो कई कंप्यूटरों पर चलता है और डेटा को एक से दूसरे में भेजता/प्राप्त करता है। मुझे प्रत्येक कनेक्टेड मशीन और कार्य के लिए अलग थ्रेड रखने में अधिक सहज महसूस होता है, जैसे 1) डेटा भेजना, 2) डेटा प्राप्त करना, 3) इसे छोड़ने पर कनेक्शन को पुन: स्थापित करना। इसलिए, क्लस्टर में एन नोड्स दिए गए हैं, प्रत्येक मशीन में प्रत्येक एन-पड़ोसी पड़ोसियों के लिए 3 धागे होंगे। आम तौर पर 12 मशीनें होंगी, जो 33 संचार धागे पर आती हैं।
इनमें से अधिकतर थ्रेड ज्यादातर समय सोएंगे, इसलिए ऑप्टिमाइज़ेशन उद्देश्यों के लिए मैं धागे की संख्या को कम कर सकता हूं और उनमें से प्रत्येक को अधिक नौकरी दे सकता हूं। जैसे उदहारण के लिए। कनेक्शन को पुन: स्थापित करना धागा प्राप्त करने की ज़िम्मेदारी है। या सभी जुड़े मशीनों को भेजना एकल धागे द्वारा किया जाता है।
तो क्या कई सोने के थ्रेड होने पर कोई महत्वपूर्ण प्रभाव पड़ता है?
JRocikt JVM का उपयोग नहीं करना चाहिए इन समस्याओं को हल करें - जैसा कि मैंने पढ़ा है इसे हजारों धागे को संभालने के लिए डिज़ाइन किया गया था। –
मुझे जेआरॉकिट जेवीएम के साथ कोई अनुभव नहीं है, इसलिए मैं वास्तव में उस पर टिप्पणी नहीं कर सकता। ऐसा कहकर, मुझे पता है कि अधिकांश ऑपरेटिंग सिस्टम हजारों धागे से खराब प्रदर्शन करेंगे, इसलिए मुझे नहीं पता कि जेआरॉकिट उस समस्या के आसपास कैसे हो जाता है ... – Liedman
64 बिट सर्वर अब मानक हैं। मुझे आश्चर्य है कि ओओएम बड़े पते के कारण अंतरिक्ष आवश्यकताओं के कारण कोई मुद्दा नहीं है। – Raedwald