2011-12-31 16 views
9

जबकि पढ़ने जैक शिराज़ी की 'जावा प्रदर्शन ट्यूनिंग', मैं निम्नलिखित बयान में आए विधि तर्क और स्थानीय चर की तुलना में। "जावा के स्थिर/उदाहरण चर आपरेशन प्रदर्शन

क्या यह अभी भी जावा 6/7 पर लागू है? और यदि हां, इसके पीछे क्या कारण हैं? (उन्होंने स्थानीय चर/पैरामीटर तक पहुंचने के लिए विशेष बाइटकोड रखने के बारे में कुछ समझाया लेकिन मुझे समझ में नहीं आया)।

उत्तर

9

यहां प्रमुख शब्द हो सकते हैं। मुद्दा यह है कि स्थानीय और पैरा (जो अनिवार्य रूप से स्थानीय लोगों का स्वाद है) रजिस्टरों में हो सकते हैं, जबकि उदाहरण और स्थैतिक चर अंततः स्मृति में समाप्त हो जाएंगे (वे उन पर काम करने के लिए आवश्यक समय के लिए रजिस्टरों में शामिल होंगे, लेकिन आखिरकार वे स्मृति में वापस जाते हैं)।

3

यहां तक ​​कि अगर पहुँच 10 बार धीमी थे, यह केवल यदि आप एक बहुत लंबे पाश में थे कोई फर्क होगा। और जावा मेमोरी मॉडल इंस्टेंस चर के लिए मेमोरी एक्सेस को अनुकूलित करने के बारे में बहुत स्मार्ट (कभी-कभी "बहुत" स्मार्ट) है। आप एक लंबे पाश, कहते हैं में एक उदाहरण वर उपयोग करते हैं, 100,000 युगल योग करने के लिए, JVM बहुत कि पहुँच का अनुकूलन करने की संभावना वास्तव में, नहीं स्मृति में हर बार परिणाम लिखना है और,। अपवाद अस्थिर क्षेत्र है। वास्तव में, यह संपूर्ण अनुकूलन मुद्दा यह है कि अस्थिर फ़ील्ड क्यों हैं।

संबंधित मुद्दे