मेरे पास एक सिंगलटन क्लास है जो डेटा को तब तक जमा करती है जब तक कि डेटा मेरे डेटाबेस में लिखा न जाए (यदि आप जानना चाहते हैं कि मैं इस तरह से चीजों को लागू क्यों कर रहा हूं, तो here देखें)। डेटा को सहेजने के बाद, मैं सिंगलटन को नष्ट करना चाहता हूं। मैं एआरसी में यह कैसे कर सकता हूं? या मैं पागल हो रहा हूं और क्या मुझे इसे नष्ट करने की ज़रूरत है?आईओएस: मैं एआरसी में सिंगलटन को कैसे नष्ट कर सकता हूं? क्या मैं?
* आप कह सकते हैं कि यह this प्रश्न का डुप्लिकेट है, लेकिन यहां स्वीकृत उत्तर उपयोगी होने के लिए पर्याप्त विशिष्ट नहीं है। यह कहता है "आप एक विधि/फ़ंक्शन घोषित कर सकते हैं जिसे आप स्पष्ट रूप से कॉल करते हैं।" इस तरह के लिए कोड क्या दिख सकता है? अगर मैं किसी विधि के बाहर ऑब्जेक्ट को रिलीज़ नहीं कर सकता, तो मैं इसे किसी विधि के अंदर कैसे खींच सकता हूं? यह भी कहता है "एक स्थिर सी ++ वर्ग धारण करने का सबसे आसान तरीका यह है कि इसे अपने विनाशक में रिलीज़ करें।" मुझे सी ++ नहीं पता, लेकिन - क्या आप वास्तव में अपने ऐप कोड में सी ++ कक्षा डाल सकते हैं?
मेरे सिंगलटन तो तरह कार्यान्वित किया जाता है:
+(NHCFamilyStatus *)familyStatus
{
static dispatch_once_t pred;
static NHCFamilyStatus *familyStatusSharedObject=nil;
dispatch_once(&pred,^
{
familyStatusSharedObject = [[NHCFamilyStatus alloc] init];
});
return familyStatusSharedObject;
}
[इस पोस्ट में, आप में मदद मिलेगी कृपया उसे देखें के रूप में सही ढंग से अपने सिंगलटन लागू करने के लिए] [1] [1]: http://stackoverflow.com/questions/7598820/correct-singleton- पैटर्न-उद्देश्य-सी-आईओएस – chrislhardin
आप सिंगलटन को क्यों नष्ट करते हैं न कि केवल डेटा युक्त बफर? – Jano
@Jano क्या आप समझा सकते हैं कि मैं उस बफर को कैसे नष्ट कर सकता हूं? – cmac