作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我对 iOS 5 单例有点陌生,我正在使用这里记录的单例:
像这样:
MyManager.h
#import <Foundation/Foundation.h>
@interface MyManager : NSObject
//Data for section 1
@property(nonatomic,copy) NSString * section1a;
@property(nonatomic, assign) NSUInteger section1b;
//Data for section 2
@property(nonatomic,copy) NSString * section2a;
@property(nonatomic, assign) NSUInteger section2b;
+ (id)sharedInstance;
@end
我的经理.m
@implementation MyManager
@synthesize section1a, section1b, section2a; , section2b;
+ (id)sharedInstance
{
static dispatch_once_t pred = 0;
__strong static id _sharedObject = nil;
dispatch_once(&pred, ^{
_sharedObject = [[self alloc] init]; // or some other init method
});
return _sharedObject;
}
@end
所以我是这样使用的:
MyManager * myManager = [MyManager sharedInstance];
myManager.data = self.data
这就是您通常使用单例的方式吗?我错过了什么吗?对于基本问题,我很抱歉,我只是想确保我做对了。
谢谢
最佳答案
你做得对。这是(目前 :) 在启用 ARC、多线程等情况下可以正常工作的方法。
它不是严格意义上的单例,因为您可以分配该类的更多实例,但我认为这与您的情况无关。
关于ios - 我的单例可以改进吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11564376/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!