美文网首页
OC中的八大锁 🔐 (线程同步)

OC中的八大锁 🔐 (线程同步)

作者: 三国韩信 | 来源:发表于2020-06-26 23:47 被阅读0次
  1. OSSpinLock 自旋锁 不安全 优先级翻转的问题

  2. os_unfair_lock 拿不到锁的时候休眠,各方面比OSSpinLock好一些 ,性能最好(iOS10以上才支持)

  3. pthread_mutex_lock 可以设置默认锁或递归锁

  4. NSLock 对pthread_mutex_lock 默认锁的情况的封装,封装成一个OC对象来调用

  5. NSRecursiveLock 对pthread_mutex_lock 递归锁的情况的封装,封装成一个OC对象来调用

  6. NSCondition & NSConditionLock 条件锁(满足某个条件下加锁解锁)

  7. @synchronized 底层是对pthread_mutex_lock封装并用哈希表来存锁。性能最差的。

  8. pthread_rwlock_t 读写锁 可以同时多个线程读操作,只能一个线程写操作

推荐使用pthread_mutex_lock。

相关文章

网友评论

      本文标题:OC中的八大锁 🔐 (线程同步)

      本文链接:https://www.haomeiwen.com/subject/zkmpfktx.html