java.util.concurrent.lock 中的类 ReentrantLock ,,这是jdk1.5出现的新特性,可以说是 synchronized 功能的替代,它具有相同的内存语义、相同的锁定,但在争用条件下却有更好的性能,此外,它还有 synchronized 没有提供的其他特性,例如用ReentrantLock实现下面的锁
class X {
private final ReentrantLock lock = new ReentrantLock();
// ...
public void m() {
lock.lock(); // block until condition holds
try {
// ... method body
} finally {
lock.unlock()
}
}
}
和synchronized效果基本是一样的
public synchronized void m() {
try {
// ... method body
} }
不过ReentrantLock还有其它更强的功能作者: 未知数|X| 时间: 2013-10-25 16:11