【发布时间】:2016-07-01 09:36:26
【问题描述】:
以下代码已被 Fortify 标记为违规(锁的“未释放资源”)
try {
if (lock.tryLock(1, TimeUnit.SECONDS)) {
try {
//do something
}
finally {
lock.unlock();
}
}
catch (InterruptedException e) {
// something
}
你能解释一下为什么吗? InterruptedException try/catch 是否应该有 finally 语句?我认为内部尝试也可以处理这种情况。
【问题讨论】:
-
只是
Lock接口吗? -
我认为这是一个 Fortify 错误 - 代码看起来不错。
-
@BoristheSpider 我认为你是对的
标签: java multithreading concurrency locking fortify