您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
【第20章:Java新IO】_文件锁
发布时间:2021-01-21 14:50:33编辑:雪饮阅读()
使用java.nio.channels.FileLock类可以实例化文件锁
使用文件锁的独占锁,则一个进程将文件锁住了,只有等该进程释放锁之后,其它进程才可以取操作该文件
import java.io.File ;
import java.io.FileOutputStream ;
import java.nio.channels.FileChannel ;
import java.nio.channels.FileLock ;
public class Hello{
public static void main(String args[]) throws Exception {
File file = new File("d:" + File.separator + "kasumi.txt") ;
//输出流以FileOutputStream构造的file和true为参数进行构造时候可以使得输出可以以追加的形式进行操作
FileOutputStream output = new FileOutputStream(file,true) ;
FileChannel fout = output.getChannel() ;// 得到通道
FileLock lock = fout.tryLock() ; // 进行独占锁的操作
if(lock!=null){
System.out.println(file.getName() + "文件锁定300秒") ;
Thread.sleep(300000) ;
lock.release() ; // 释放
System.out.println(file.getName() + "文件解除锁定。") ;
}
fout.close() ;
output.close() ;
}
};
关键字词:java,文件锁