ReentrantLock和Java中同步的区别
有两种方法可以通过多个线程锁定共享资源。一个是重入锁(OrReadWriteLock),另一个是通过使用Synchronized方法。
Java5的Java并发包中提供了ReentrantLock类。
它是Lock接口的实现,根据javadocs,Lock接口的实现提供了比使用同步方法可获得的操作更广泛的操作。
lock()了通过线程获取共享资源锁的方法 unlock()方法ReentrantLock的示例
public class ReentrantLockExample implements Runnable{
private Lock lock=new ReentrantLock();
@Override
public void run() {
try {
lock.lock()
//锁定一些资源
}
catch (InterruptedException e) {
e.printStackTrace();
}
finally {
lock.unlock();
}
}
}SynchronizedLock的示例
public class SynchronizedLockExample implements Runnable{
@Override
public void run() {
synchronized (resource) {
//锁定一些资源
}
}
}热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短