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 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短