मैंने आज सी # और जावा में post about performance improvement पढ़ा।स्थानीय चर या कक्षा फ़ील्ड?
मैं अब भी इस पर अटक:
19. नहीं अति प्रयोग उदाहरण चर क्या
प्रदर्शन स्थानीय चर का उपयोग करके सुधार किया जा सकता।
public void loop() {
int j = 0;
for (int i = 0; i<250000;i++){
j = j + 1;
}
}
उदाहरण 2:: उदाहरण 1 में कोड उदाहरण में कोड 2.
example1 तुलना में तेजी से निष्पादित करेंगे
int i;
public void loop() {
int j = 0;
for (i = 0; i<250000;i++){
j = j + 1;
}
}
दरअसल, मैं क्यों समझ में नहीं आता यह होना चाहिए कुछ मेमोरी को तुरंत चालू करने के लिए तेज़ रहें और loop
पर कॉल करने पर हर बार इसे रिलीज़ करें जब मैं किसी फ़ील्ड में सरल पहुंच कर सकता हूं।
यह शुद्ध जिज्ञासा है, मैं कक्षा 'स्कोप' में चर 'i' डालने की कोशिश नहीं कर रहा हूं: पी क्या यह सच है कि स्थानीय चर का उपयोग करने के लिए तेज़ है? या शायद कुछ मामलों में?
मुझे लगता है कि प्रदर्शन अंतर नगण्य होगा , आपको कोड को समझने में डेवलपर प्रदर्शन के बारे में अधिक चिंतित होना चाहिए। यदि आपके पास कोई क्षेत्र या संपत्ति है जो स्थानीय चर होना चाहिए, तो मैं इसके उद्देश्य को समझने में विवादित होगा। यदि आप प्रदर्शन अंतर को जानना चाहते हैं, तो इसे बेंचमार्क क्यों न करें (या आईएल को दोनों उत्पन्न करें)? – Matthew
ढेर से चर का उपयोग करना एक ढेर संदर्भ के माध्यम से इसे एक्सेस करने से शायद तेज़ है। –
उस लेख में इतनी बुरी सलाह मुझे नहीं पता कि –