import java.util.concurrent.locks.ReentrantReadWriteLock;
-public class Locker {
+public class Locker implements AutoCloseable {
private ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
public LockHolder lockForWriting() {
ReentrantReadWriteLock.WriteLock wLock = lock.writeLock();
rLock.lock();
return new LockHolder(rLock);
}
+ @Override
+ public void close() {
+ lock.readLock().unlock();
+ lock.writeLock().unlock();
+ }
}