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 古风祝福语唯美简短亲情