2011-08-26 8 views
6

मैं this लिंक से गुज़र रहा था, जहां मैं पर एक बिंदु पर आया था UIImage की छवि से बचें। किस कारण से हमें इससे बचना चाहिए?UIImage की छवि से बचें नामांकित - मेमोरी प्रबंधन

धन्यवाद,
नीतीश

+0

यह एक पुराना सवाल है, लेकिन क्या यहां पाए गए निष्कर्ष अभी भी आईओएस 6.1 पर लागू होते हैं? – Morkrom

उत्तर

6

एप्पल में डब्ल्यूडब्ल्यूडीसी वीडियो सेक्शन वे छवि कह रहे हैं नामित एक बार लीक किया गया..लेकिन अब नहीं .. मुझे वीडियो देखने को याद है, लेकिन यह याद नहीं कर सकता कि कौन सा वीडियो अनुभाग .. यह 2010 में था डब्ल्यूडब्ल्यूडीसी मुझे लगता है..मैंनाम अभी भी छवियों को कैश करता है .. छवि के दस्तावेज से नामित ..

यह विधिके साथ एक छवि ऑब्जेक्ट के लिए सिस्टम कैश में दिखती हैनिर्दिष्ट नाम और उस वस्तु को लौटाता है यदि यह मौजूद है। यदि मिलान छवि ऑब्जेक्ट पहले से ही कैश में नहीं है, तो यह विधि निर्दिष्ट फ़ाइल से डेटा लोड करती है, इसे कैश करती है, और उसके बाद परिणामस्वरूप परिणाम ऑब्जेक्ट देता है।

लेकिन मैं इन कैश के साफ़ कर दिया जाएगा अपने information..I के लिए किसी भी कम स्मृति शर्त occurs..Just imageNamed का एक उत्साही प्रशंसक हूँ लगता है और मैं हमेशा का उपयोग it..I इसके साथ किसी भी स्मृति मुद्दों नहीं था ..

2

आप समाप्त करने के लिए लेख पढ़ना चाहिए।

बचें UIImage के imageNamed: स्थिर विधि: एलेक्स Curylo UIImage के imageNamed के साथ समस्याओं के बारे में एक बिल्कुल बढ़िया लेख लिखा है। ऐसा लगता है (और मेरे परीक्षणों में यह सच प्रतीत होता है) कि आईफोन ओएस (कम से कम संस्करण 2.0 और 2.1) छवि का उपयोग कर डिस्क से लोड छवियों के लिए एक आंतरिक कैश का उपयोग करता है :, और कम स्मृति के मामलों में यह कैश साफ़ नहीं किया गया है पूरी तरह से (यह संस्करण 2.2 के साथ ठीक किया गया प्रतीत होता है, हालांकि, लेकिन मैं पुष्टि नहीं कर सकता)।

1

यह कहता है कि इसे एसडीके के संस्करण 2.0 और 2.1 में टालना चाहिए। यह लंबे समय से ठीक से काम कर रहा है। जब तक यह स्मृति चेतावनी प्राप्त करता

, इस question

7

पर एक नज़र यह छवियों और नहीं कैश इसे जारी रखना। मुझे यकीन है कि नहीं हूँ, लेकिन मैं लगता है कि ऐप्लिकेशन क्रैश होने का खतरा हो सकता है, यदि आपका ऐप्स (बड़ा वाले) छवियों के बहुत

मेरे लिए, मैं सामान्य रूप से उपयोग "imageWithContentsOfFile" है:

[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileName ofType:nil]] 
+1

imageWithContentsOfFile अधिक विश्वसनीय है। मैं केवल अपने जीयूआई आइकन के लिए नामित छवि का उपयोग करता हूं। – jjxtra

संबंधित मुद्दे