यहाँ नमूना कोड http://developer.apple.com/library/ios/#samplecode/MVCNetworking/Introduction/Intro.htmlऐप्पल के नमूना एमवीसीनेटवर्किंग में सिंगलटन क्लास नेटवर्क मैनेजर सही है?
नीचे के लिए लिंक फ़ाइल NetworkManager.m
+ (NetworkManager *)sharedManager
// See comment in header.
{
static NetworkManager * sNetworkManager;
// This can be called on any thread, so we synchronise. We only do this in
// the sNetworkManager case because, once sNetworkManager goes non-nil, it can
// never go nil again.
if (sNetworkManager == nil) {
@synchronized (self) {
sNetworkManager = [[NetworkManager alloc] init];
assert(sNetworkManager != nil);
}
}
return sNetworkManager;
}
जाहिर है धागा सुरक्षित मुद्दों यहाँ हैं से कोड का टुकड़ा है। एक से अधिक धागे होने पर दो NetworkManager उदाहरण बनाया जा सकता है। तो ऐप्पल ने गलती की, है ना?
"स्पष्ट रूप से दो एसनेटवर्क प्रबंधक बनाया जा सकता है। इसलिए ऐप्पल ने गलती की, है ना?" क्यूं कर? –
कृपया कर्ट के उत्तर पर एक नज़र डालें। –