@synchronized(self)的用法:
@synchronized 的作用是创建一个互斥锁,保证此时没有其它线程对self对象进行修改。这个是objective-c的一个锁定令牌,防止self对象在同一时间内被其它线程访问,起到线程的保护作用。
互拆锁使用格式
@synchronized(锁对象){//需要锁定的代码}
! 锁定一份代码只用一把锁,用多把锁是无效的互拆锁的优缺点
优点: 能有效防止因多线程抢占资源造成的数据安全问题.
缺点: 需要消耗大量的CPU资源互斥锁的使用前提: 多条线程抢夺同一块资源,
线程同步 : 多条线程在同一条线上执行(按顺序的执行任务)
互斥锁,使用了线程同步技术