newInstance()
का उपयोग मेरे कोड के प्रदर्शन-महत्वपूर्ण क्षेत्र में newInstance()
का उपयोग कर नए ऑपरेटर बनाम नए ऑपरेटर() के प्रदर्शन के रूप में किया गया था। विधि हस्ताक्षर है:जावा में
<T extends SomethingElse> T create(Class<T> clasz)
मैं पारित Something.class
तर्क के रूप में, मैं newInstance()
के साथ बनाया SomethingElse
का एक उदाहरण, मिलता है।
आज मैं सूची से इस प्रदर्शन TODO को साफ़ करने के लिए वापस आया, इसलिए मैंने new
ऑपरेटर बनाम newInstance()
के कुछ परीक्षण चलाए। मैं newInstance()
के प्रदर्शन दंड के साथ बहुत हैरान था।
मैं यहाँ इसके बारे में थोड़ा लिखा है,: http://biasedbit.com/new-vs-newinstance/
(। आत्म पदोन्नति के बारे में क्षमा करें ... मैं पाठ यहाँ जगह चाहते हैं, लेकिन इस सवाल का अनुपात के बाहर विकसित होगा)
क्या मुझे यह जानना अच्छा लगेगा कि -server
झंडा इस तरह के प्रदर्शन को बढ़ावा देता है जब वस्तुओं की संख्या बड़े पैमाने पर बढ़ती है और "कम" मानों के लिए नहीं, 100 या 1000 के लिए नहीं।
मैंने अपना सबक सीख लिया पूरी प्रतिबिंब चीज, यह जेवीएम रनटाइम में निष्पादन के अनुकूलन के बारे में सिर्फ जिज्ञासा है, espec § -server
ध्वज के साथ। इसके अलावा, अगर मैं परीक्षण में कुछ गलत कर रहा हूं, तो मैं आपकी प्रतिक्रिया की सराहना करता हूं!
संपादित करें: मैंने एक गर्मजोशी चरण जोड़ा है और परिणाम अब और अधिक स्थिर हैं। इनपुट के लिए धन्यवाद!
लिंक टूटा हुआ है:/ –
वहां मैंने इसे ठीक कर दिया! – biasedbit
ब्लॉग पोस्ट [फिर से स्थानांतरित हो गया है] (http://biasedbit.com/blog/new-vs-newinstance)। –