您好,我对 Concurrent 包中的 ReentrantLocks 有疑问。
//First
Object ob = new Object();
synchronized(ob){
}
//Second
Lock lock = new ReentrantLock();
lock.lock();
try{
}
finally{
lock.unlock();
}
它说两段代码是等价的。我没有得到的是在 Fist 块同步块中获取 obj 对象的锁定。但是可重入锁在什么对象上获取锁呢?我可以像 synchronized(obj) 一样指定我想要锁定的对象吗?