ReentrantReadWriteLock.ReadLock
ReentrantReadWriteLock.WriteLock
对于上面的两个类,我这样调用锁吗?
try {
readLock.tryLock(10, TimeUnit.SECONDS)
[...]
} finally {
readLock.unlock();
}
要么
readLock.tryLock(10, TimeUnit.SECONDS)
try {
[...]
} finally {
readLock.unlock();
}
哪种方法更安全?对于
lock()
方法和tryLock()
方法,是否同样适用? 最佳答案
它必须放在条件部分,如果无法获得锁,则不能尝试使用数据。
if (readLock.tryLock(10, TimeUnit.SECONDS)) {
try {
[...]
} finally {
readLock.unlock();
}
} else {
// failed to get lock
}
关于java - tryLock方法调用是否进入try块?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17118374/