美文网首页
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