मैं 4.3 और बाद के लक्ष्य आईओएस पर्यावरण के साथ आईओएस विरासत कोड पर काम कर रहे एक बड़ी टीम के हिस्से के रूप में काम करता हूं। मैंने अन्य डेवलपर्स को NSObject
से नीचे आने वाली कक्षाओं में चेक किया है लेकिन dealloc
विधि नहीं है। मैंने UIViewController
वंश भी देखे हैं जिनमें viewDidUnload
विधियां शामिल नहीं हैं। जब मैं इस कोड के बारे में पूछता हूं तो सामान्य प्रतिक्रिया "चिंता न करें, एआरसी अब उसका ख्याल रखता है।"एआरसी, प्री-आईओएस 6 का उपयोग करते समय अभी भी 'dealloc' और 'viewDidUnload' विधियों की आवश्यकता है?
मैं समझता हूँ कि viewDidUnload
viewDidLoad
फोन करके जब iOS अनुभव कम स्मृति की स्थिति कहा जाता है, वस्तुओं है कि निर्मित किया जा सकता है जारी करके स्मृति को मुक्त के लक्ष्य के साथ, और जब एक वस्तु की गिनती को बनाए रखने के शून्य हो जाती है dealloc
कहा जाता है कि। UIViewController ऑब्जेक्ट्स और वंशजों के लिए इसका अर्थ यह हो सकता है कि 'viewDidUnload' dealloc
से पहले कहा जा सकता है या नहीं।
तो मेरा प्रश्न यहां है: क्या dealloc
और viewDidUnload
आईओएस 6 से पहले आईओएस संस्करणों पर एआरसी का उपयोग करते समय अभी भी आवश्यक विधियों की आवश्यकता है?
यदि उत्तर "हाँ है!" तो मुझे तर्क लेने के लिए अच्छे कारणों और/या दस्तावेज़ीकरण की आवश्यकता होगी।
आपके प्रतिक्रियाओं की प्रतीक्षा कर रहे हैं। (मेरे प्रश्न को कसने में मदद करने के लिए टॉमी के लिए धन्यवाद।)
क्षमा करें, @Tommy, मैं नहीं लक्ष्य iOS संस्करण के बारे में मेरे सवाल में काफी स्पष्ट था। आपके उत्तर के आधार पर प्रश्न अपडेट करेगा। :) – tychoD
धन्यवाद, मैंने मेरे प्रश्न का उत्तर दिया। : डी – tychoD
क्या मुझे अपने सभी @properties को dealloc() में रखना होगा? –