iOS pthread_rwlock 实现多读单写

2020-02-21  本文已影响0人  孙掌门

iOS pthread_rwlock 实现多读单写


 pthread_rwlock_init(&_rwlock, NULL);

- (void)read{
    pthread_rwlock_rdlock(&_rwlock);
    NSLog(@"read");
    pthread_rwlock_unlock(&_rwlock);
}
- (void)wtite
{
    pthread_rwlock_wrlock(&_rwlock);
    NSLog(@"write");
    pthread_rwlock_unlock(&_rwlock);
}

上面的代码用到了读写锁,读操作是共享的,可以多线程同时读取,写操作是互斥的,同一时间只能有一个写,同时在写的时候,不能读,我之前的文章中写过一个多读单写的案例,利用的是栅栏函数。

上一篇 下一篇

猜你喜欢

热点阅读