2011-09-27 14 views
30

मुझे अपने आईओएस ऐप में कुछ मेमोरी चेतावनी मिल रही है इसलिए मैं आवंटन देखने के लिए उपकरण चला रहा हूं। क्या मुझे * सभी आवंटन * लाइव बाइट्स या कुल मिलाकर बाइट्स देखना चाहिए?एक्सकोड इंस्ट्रूमेंट्स आवंटन: लाइव बाइट्स या कुल मिलाकर बाइट्स देखें?

किसी ने कहा कि यदि मैं 22 एमबी के लिए उपयोग करता हूं तो आईओएस मेरा ऐप बंद कर सकता है, क्या यह लाइव या कुल मिलाकर बाइट सेक्शन है?

enter image description here

+0

"किसी ने कहा कि यदि मैं 22 एमबी के लिए उपयोग करता हूं तो आईओएस मेरा ऐप बंद कर सकता है" - क्या आप फिर से बदल सकते हैं? –

+0

क्षमा करें, इस पोस्ट में: http://stackoverflow.com/questions/4167720/memory-used-by-any-iphone-app यह उल्लेख करता है कि यदि आपका ऐप ओएस की तुलना में 22 एमबी से अधिक का उपयोग कर रहा है तो आपके ऐप को मार सकता है। –

+2

कोई वास्तविक कठिन और तेज़ नियम नहीं है - कम से कम, कुछ भी प्रकाशित नहीं हुआ, वास्तव में। विभिन्न उपकरणों में आईओएस के विभिन्न संस्करणों को चलाने वाली स्मृति की अलग-अलग मात्रा होती है; इस बात की कोई गारंटी नहीं है कि आपके आईपैड पर 4.3 की ऊपरी सीमा 4.3 चल रही आईपैड 2 पर सीमाओं के भीतर अच्छी तरह से नहीं होगी। हमेशा की तरह, पहचानें कि कौन से डिवाइस और आईओएस के कौन से संस्करण आपके ऐप को लक्षित करने की ज़रूरत है, और मेमोरी खान में कैनरी के रूप में कार्य करने के लिए सबसे बाध्य डिवाइस का उपयोग करें। –

उत्तर

46

लाइव बाइट्स वर्तमान उपयोग है और क्या आप में रुचि रखते समग्र बाइट्स सभी आधिकारिक आवंटन कर रहे हैं, भी शामिल है। दूसरी बात ग्राफ को देखने और चोटियों को देखने के लिए है। एक उदाहरण के रूप में मैंने एक ऐप में लगभग 27 एमबी की एक बड़ी चोटी देखी, जिस पर मैं काम कर रहा था, यह जानकर कि मैं चरम स्मृति उपयोग को 8 एमबी तक कम करने में सक्षम था।

आपके ऐप का अभ्यास करते समय समय के साथ भी देखें, समय के साथ पर्याप्त मेमोरी वृद्धि हो सकती है जो लीक नहीं है, अभी और उपयोग नहीं किया जा रहा है।

मेमोरी कॉलम के विवरण के लिए Explanation of Live Bytes & Overall Bytes देखें।

+0

क्या कोई बिंदु है जिस पर बहुत अधिक स्मृति का उपयोग किया जा रहा है जब एक दृश्य जारी किया जाता है? मेरा ऐप मेरा दृश्य जारी कर रहा है जब मेरे लाइव बाइट्स 10 एमबी से थोड़ा अधिक हैं। –

+3

मुझे बिना किसी समस्या के ऐसे आंकड़े दिखाई देते हैं। यदि आप एक संक्रमण पर एक स्पाइक देखते हैं तो आप देख सकते हैं कि क्या किया जा सकता है। ऑटोरेलीज पूल के साथ कुछ चालें हैं जिन्हें उन उदाहरणों में खेला जा सकता है जब आपको बड़ी ऑटोरेलेज्ड ऑब्जेक्ट मिलती है। सबसे अच्छा है कि छोटे मेमोरी डिवाइस, आईपॉड टच, आईपैड 1, आईफोन 3 जीएस आदि पर परीक्षण करना सबसे अच्छा है। चीजों का एक गुच्छा प्राप्त करें, डिवाइस पर ईमेल भेजा गया है, नेटफ्लिक्स खेलें, – zaph

+0

एक्सकोड 4.5 (यानी, पोस्ट-एआरएमवी 6) परिप्रेक्ष्य से , आईपैड 1 नया अभी भी समर्थित डिवाइस है जिसमें सबसे कम मात्रा में रैम है जो भंडारण की मात्रा के अनुपात में आनुपातिक है। दोनों और 3 जीएस में 256 एमबी रैम है लेकिन 3 जीएस में पांचवें से भी कम पिक्सल हैं। इसलिए स्मृति तनाव के लिए परीक्षण करने के लिए यह सबसे अच्छी बात है। – Tommy