Lock使用----ReentrantRedWriteLock

来源:互联网 发布:ios 蜂窝移动网络搜索 编辑:程序博客网 时间:2024/06/06 11:36

ReentrantLock具有完全排斥他的效果,即同一个时间只有一个线程在执行。

ReentrantRedWriteLock类是一种读写锁。顾名思义包括两个锁,一个是读操作相关的锁即共享锁,即同一时间允许多个线程进行读操作;另一个是写操作相关的锁即排它锁,即同一时间只允许一个线程进行写操作。

读锁与写锁是互斥的,写锁与写锁是互斥的,读锁与读锁是共享的,非排斥的。

读锁上锁:lock.readLock.lock()

读锁释放锁:lock.readLock.unlock()

写锁上锁:lock.writeLock.lock()

写锁释放锁:lock.writeLock.unlock()