मेरे ऐप में एक तर्क प्रक्रिया के दौरान, मुझे उपयोगकर्ता प्राथमिकताओं को बार-बार एक्सेस करने की आवश्यकता होती है, और यह निर्धारित करने के लिए कि कितनी संसाधित की जानी चाहिए और कैसे। यह सवाल प्रदर्शन के बारे में नहीं है, लेकिन इसे सही तरीके से करने के बारे में है।एनएसयूसर डीफॉल्ट एक्सेस करना अक्सर
वर्तमान में मैं एक मूल्य का अनुरोध करने के लिए प्रत्येक बार [[NSUserDefaults standardUserDefaults] valueForKey:...]
कर रहा हूं। क्या ये सही है? मुझे लगता है कि उपयोगकर्ता को "ivar" के रूप में डिफॉल्ट करने से अतिरिक्त काम कम हो सकता है, लेकिन फिर मुझे आश्चर्य है कि इसमें सिंक समस्याएं नहीं होंगी, जैसे कि उपयोगकर्ता वरीयताओं को बदलता है और वे केवल तभी अपडेट होते हैं जब ऐप पुनरारंभ होता है (इसलिए उपयोगकर्ता डिफ़ॉल्ट ऑब्जेक्ट को पुनर्निर्मित किया जाता है)।
क्या कोई बेहतर तरीका है?
यदि आप करते हैं तो आपके पास सिंक समस्याएं नहीं होंगी और यदि आपके पास नहीं है तो आपके पास प्रदर्शन समस्याएं नहीं होंगी। – vakio