com.firefly.utils.concurrent.SimpleLock Maven / Gradle / Ivy
package com.firefly.utils.concurrent;
import com.firefly.utils.function.Func0;
import java.util.concurrent.locks.ReentrantLock;
/**
* @author Pengtao Qiu
*/
public class SimpleLock {
private final ReentrantLock lock = new ReentrantLock();
public R lock(Func0 func0) {
try {
lock.lock();
return func0.call();
} finally {
lock.unlock();
}
}
}