Objective-C

时间:2018-08-02 21:55:24

标签: objective-c thread-safety lazy-initialization

Apple's documentation状态,

  

如果您需要为具有以下功能的属性编写自定义访问器方法   使用实例变量,您必须访问该实例变量   直接从方法内部进行。例如,通常会延迟   使用“惰性”将属性初始化,直到首次请求   访问器”,像这样:

- (XYZObject *)someImportantObject {
    if (!_someImportantObject) {
        _someImportantObject = [[XYZObject alloc] init];
    }

    return _someImportantObject;
}

但这似乎无法解决线程安全问题。使像该线程这样的惰性访问器安全的最佳方法是什么?

0 个答案:

没有答案