मेरे पास एक ऑब्जेक्ट है जो बनाने के लिए महंगा है, जो कुछ अप्रबंधित संसाधनों का उपयोग करता है जिन्हें स्पष्ट रूप से मुक्त किया जाना चाहिए और IDISposable() को कार्यान्वित करना चाहिए। मुझे इन महंगे संसाधनों के उदाहरण के लिए कैश चाहिए ताकि सृजन लागत कम हो, लेकिन मुझे निपटान से निपटने के तरीके को जानने में परेशानी हो रही है।कैश किए गए IDisposable ऑब्जेक्ट्स का प्रबंधन कैसे करें?
तरीकों कि वस्तुओं का उपयोग निपटान तो मैं कैश में निपटाए उदाहरणों, जो तब से निर्मित किया जाना है, कैश की बात को हराने के साथ अंत करने के लिए जिम्मेदार हैं। यदि मैं उन विधियों में ऑब्जेक्ट्स का निपटान नहीं करता जो उनका उपयोग करते हैं तो वे कभी निपटान नहीं होते हैं। मैंने सोचा कि जब उन्हें कैश से बाहर निकाला जाता है तो मैं उनका निपटान कर सकता हूं, लेकिन फिर मैं एक उदाहरण का निपटारा कर सकता हूं जिसका अभी भी एक विधि द्वारा उपयोग किया जा रहा है।
क्या यह सिर्फ उन्हें दायरे से बाहर जाने और कचरा कलेक्टर द्वारा एकत्रित करने और उस बिंदु पर संसाधनों को मुक्त करने के लिए मान्य है? यह गलत लगता है और उनके विचार के खिलाफ डिस्पोजेबल ...
मैं मूल रूप से ऐसे समाधान के साथ समाप्त हुआ जो इस और नोबगज़ उत्तर का एक संकर था। धन्यवाद –