线程的状态


多线程的安全隐患

好比,上厕所,一个资源就好比这个厕所只有一个,你只有等别人上完开了门出来之后,你才可以进去吧。
为了体现这个安全隐患,我们通过一个“买票”的实例来体会这个东西:


加锁前:

加锁后:

下面的不是唯一的


原子属性和非原子属性
atomic和nonatomic(这两个可能会在面试中问到):


- iOS开发的建议
- 所有属性都声明为nonatomic
- 尽量避免多线程抢夺同一块资源
- 尽量将加锁、资源抢夺的业务逻辑交给服务器端处理,减小移动客户端的压力