我有一个具有各种属性的用户类:
@property (strong, nonatomic) NSString *CandID;
@property (assign, nonatomic) BOOL IsCandidate;
@property (assign, nonatomic) NSInteger ResponseCode;
@property (strong, nonatomic) NSMutableArray *locations;
ETC
我的一个 ViewControllers 可能有一个用户属性,即
@property (strong, nonatomic) User *user;
并且这个用户可能会被传递给后续以模态方式启动的 ViewController。
当用户对象第一次初始化时,我将在中央调度中发送一些方法,该方法将通过 REST 填充位置数组。这个想法是,当有人使用我的应用程序进入屏幕选择位置时,列表已经被下载。
我想要做的是在 gcd 使用它时锁定位置区域,我使用过类似的东西
[someLock lock] ... [someLock unlock]
在过去,但我想要的是要锁定的位置数组,但其余的用户对象的方法和属性可以从主线程访问。实现这一目标的最佳方法是什么?