我有一个tomcat/blazeDS应用程序,其中有几个用户写入同一个xml文件。当他们写的时候,我想在那个文件上有一个文件锁。我的第一个尝试是获取文件的文件通道,并建立一个文件的lock()。但不幸的是,如果我尝试这样做,总会有一个OverlappingFileLockException,因为总是有一个新的进程来调用blazeDS组件。
是否有可能在会话中存储FileLock或tomcat的基本功能来锁定会话中的文件。
谢谢你们大家
发布于 2011-06-24 15:22:21
我通过在静态类中使用ReentrentLock解决了这个问题,所以当它被锁定时我不能访问它。
public class DataAccessUtil {
private static final ReentrantLock lock = new ReentrantLock();..。
public static void lockDataFolder() {
lock.lock(); // block until condition holds
}
public static void unlockDataFolder() {
lock.unlock();
}https://stackoverflow.com/questions/4314416
复制相似问题