以下代码已被Fortify标记为违规(锁定的“未发布资源”)
try {
if (lock.tryLock(1, TimeUnit.SECONDS)) {
try {
//do something
}
finally {
lock.unlock();
}
}
catch (InterruptedException e) {
// something
}
能否请您解释一下为什么?在InterruptedException try/catch中,是否应该使用finally语句?我认为内部的try也会处理这种情况。
Lock
接口吗? - John Vint