लिंकक पर Count
() विधि का उपयोग करके गणना-संपत्ति के परिणाम को वापस करने जैसी कई चालाक चीजें करता है। क्या कोई अच्छा स्रोत है जो इस अनुकूलन का अवलोकन देता है?क्या कोई अच्छा स्रोत है जो linq अनुकूलन का अवलोकन देता है?
यह क्योंकि जैसा कि इससे पहले कि मैं ऊपर पता था कि बहुत ही दिलचस्प हो सकता है, मैं Count()
इस्तेमाल किया और इस प्रकार अक्सर केवल एक IEnumerable<T>
की तुलना में एक List<T>
लौटे क्योंकि मैं जानता था कि फोन करने वाले अक्सर सूची के कहने गिनती की जरूरत की आवश्यकता होगी कभी नहीं।
लेकिन ध्यान में रखते हुए कि गणना() वास्तव में IEnumerable<T>
में निहित उदाहरणों की गणना नहीं करती है, लेकिन लौटाई गई सूची से गणना-संपत्ति का परिणाम लौटाती है और इसलिए प्रदर्शन को खोने से मुझे अपने कई लौटने वाले प्रकारों को बदलने का अवसर नहीं मिला सूची से IEnumerable<T>
पर।
"लिंकक बहुत सारे अनुकूलन करता है जैसे कि गलती() विधि का उपयोग करके गिनती() विधि का उपयोग करके गणना-संपत्ति का परिणाम लौटाता है ??? –
@ मिच: संभावित रूप से एक LINQ क्वेरी सभी अंतर्निहित डेटा पुनर्प्राप्त नहीं करती है जब एक सरल 'गणना()' कॉल करेगा। –
मैंने कुछ मिनट पहले सीखा था कि एक सूची में AsEnumerable को कॉल करने से कोई नया उदाहरण नहीं बनता है, लेकिन केवल इंस्टेंस ही लौटाता है। लेकिन शायद शब्द अनुकूलन सही नहीं है। ए ने प्रश्न-पाठ को और अधिक सटीक रूप से दिखाने के लिए बदल दिया है जो मेरा मतलब है। – HCL