मुझे उन वर्गों के बिना किसी भी ज्ञान के ट्रैक किए जाने के लिए विभिन्न वर्गों के उदाहरणों को ट्रैक करने का एक तरीका चाहिए। अनिवार्य रूप से, मेरे पास एक वर्ग कारखाना है जो उदाहरण बनाता है और उन्हें किसी अन्य धागे पर हाथ रखता है। एक बार जब थ्रेड पूरा हो जाता है और उदाहरण को उतार देता है, तो मुझे इसकी अधिसूचना प्राप्त करने की आवश्यकता होती है, इसलिए जब मैं सभी उदाहरण चला जाता हूं तो मैं अपने वर्ग कारखाने से संदर्भ गिनती और बाहर निकल सकता हूं।ऑब्जेक्ट निपटान/विनाश की अधिसूचना प्राप्त करें
चुनौती यह है कि मैं किसी भी कक्षा को संशोधित नहीं कर सकता जिसे मैं लोड कर दूंगा, क्योंकि मैं उनके स्रोत कोड को नियंत्रित नहीं करता हूं।
मेरे द्वारा बनाए गए उदाहरणों को ट्रैक करना सरल है, मैं उन्हें कुछ प्रकार के संग्रह में डाल सकता हूं क्योंकि मैं उन्हें बना देता हूं। उनके विनाश को ट्रैक करने से मुझे समस्याएं आ रही हैं। अगर मैं स्रोत कोड को संशोधित कर सकता हूं, तो मैं प्रत्येक कक्षा में एक ईवेंट जोड़ूंगा और जब मैं एक उदाहरण बनाउंगा, तो मैं इस कार्यक्रम में शामिल होगा और इसे मेरी अधिसूचना के रूप में उपयोग करूंगा। लेकिन मैं ऐसा नहीं कर सकता।
तो, सवाल यह है: क्या ऑब्जेक्ट इंस्टेंस की निगरानी करने और इसे नष्ट होने पर पता लगाने के लिए कोई चुस्त तरीका है?
+1 यह मजाकिया है - मैं वही सटीक बात सोच रहा था, जब तक कि मैंने उस हिस्से को पढ़ा जहां उसने कहा कि वह वस्तुओं के निर्माण को नियंत्रित कर रहा था;) –
यह वास्तव में ऐसा लगता है कि यह मेरी स्थिति में सबसे व्यावहारिक समाधान हो सकता है, मैं यह कोशिश करने जा रहा हूँ। –
मुझे आपकी रीड की तुलना में बेहतर पसंद है क्योंकि इसका मतलब है कि उन प्रकार के ग्राहकों को विशेष सजावटी प्रकार के बारे में जानने की आवश्यकता नहीं है –