Reports java.util.concurrent.locks.Lock resources that are not acquired in front of a try block or not unlocked in the corresponding finally block. Such resources may be inadvertently leaked if an exception is thrown before the resource is closed.

Example:


  lock.lock(); // will be reported since the 'finally' block is missing
  try {
    doSmthWithLock();
  } catch (IOException e) {
    throw new UncheckedIOException(e);
  }
  lock.unlock();