java文件锁定_如何使用java锁定文件(如果可能的话)
不要使用java.io包,而是使用java.nio包裹。后者有一個FileLock班級,等級。可以將鎖應用于FileChannel.try?{
//?Get?a?file?channel?for?the?file
File?file?=?new?File("filename");
FileChannel?channel?=?new?RandomAccessFile(file,?"rw").getChannel();
//?Use?the?file?channel?to?create?a?lock?on?the?file.
//?This?method?blocks?until?it?can?retrieve?the?lock.
FileLock?lock?=?channel.lock();
/*
use?channel.lock?OR?channel.tryLock();
*/
//?Try?acquiring?the?lock?without?blocking.?This?method?returns
//?null?or?throws?an?exception?if?the?file?is?already?locked.
try?{
lock?=?channel.tryLock();
}?catch?(OverlappingFileLockException?e)?{
//?File?is?already?locked?in?this?thread?or?virtual?machine
}
//?Release?the?lock?-?if?it?is?not?null!
if(?lock?!=?null?)?{
lock.release();
}
//?Close?the?file
channel.close();
}?catch?(Exception?e)?{
}
總結
以上是生活随笔為你收集整理的java文件锁定_如何使用java锁定文件(如果可能的话)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql优化说明_MySQL性能优化各
- 下一篇: debian编译安装python_编译安