-
OSSpinLock 自旋锁 不安全 优先级翻转的问题
-
os_unfair_lock 拿不到锁的时候休眠,各方面比OSSpinLock好一些 ,性能最好(iOS10以上才支持)
-
pthread_mutex_lock 可以设置默认锁或递归锁
-
NSLock 对pthread_mutex_lock 默认锁的情况的封装,封装成一个OC对象来调用
-
NSRecursiveLock 对pthread_mutex_lock 递归锁的情况的封装,封装成一个OC对象来调用
-
NSCondition & NSConditionLock 条件锁(满足某个条件下加锁解锁)
-
@synchronized 底层是对pthread_mutex_lock封装并用哈希表来存锁。性能最差的。
-
pthread_rwlock_t 读写锁 可以同时多个线程读操作,只能一个线程写操作
推荐使用pthread_mutex_lock。
网友评论