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 送给学长毕业祝福语简短