2011/11/20更新

[Java] ファイルをロックする方法

このエントリーをはてなブックマークに追加            

とある事情で、Javaプログラムからファイルへロックを掛ける方法を考えていたので、見つけた方法を記述します。

java.nioパッケージのFileChannelとFileLockを利用する方法です。サンプルソースを載せておこっと。今度参照する機会があれば良いな。

public class FileLockSample {
 public static void main(String[] args) throws Exception{
  final String filePath = "src/filelock/target.txt";
  File lockFile = new File(filePath);
  FileOutputStream fs = null;
  try{
   fs = new FileOutputStream(lockFile);
   FileChannel ch = fs.getChannel();
   FileLock lock = null;
   try {
    lock = ch.tryLock(); //ロックを取得
    //ロックを取得しての処理
    
   } finally {
    if(lock != null) lock.release();
   }
  }finally{
   if(fs != null) fs.close();
  }
 }
}







こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。