Open chengfengjie opened 6 years ago
ReentrantLock
Java 5.0 增加一种新的机制: ReentrantLock。与synchronized和volatile机制相反, ReentrantLock并不是一种代替内置加锁的方法,而是当内置加锁机制不适用时,作为一种选择的高级功能。
synchronized
volatile
Lock提供了一种无条件的、可轮询的、定时的以及可中断的锁获取操作,所有的加锁和解锁的方法都是显示操作的。
Lock
ReentrantLock实现了Lock接口,并提供了与synchronized相同的互斥性和内存可见性。
Lock必须在finally中unlock()
finally
unlock()
ReentrantLock
Java 5.0 增加一种新的机制:
ReentrantLock
。与synchronized
和volatile
机制相反,ReentrantLock
并不是一种代替内置加锁的方法,而是当内置加锁机制不适用时,作为一种选择的高级功能。Lock
提供了一种无条件的、可轮询的、定时的以及可中断的锁获取操作,所有的加锁和解锁的方法都是显示操作的。ReentrantLock
实现了Lock
接口,并提供了与synchronized
相同的互斥性和内存可见性。Lock
必须在finally
中unlock()