当前位置: 代码迷 >> J2SE >> j2se-nio-FileLock
  详细解决方案

j2se-nio-FileLock

热度:10616   发布时间:2013-02-25 00:00:00.0
j2se---nio---FileLock
FileLock对象的方法public final FileLock lock() ; //获得此通道的文件的独占锁定public abstract FileLock lock(long position,long size,boolean shared); //获得此通道文件给定区域的锁定,并制定锁定的位置,大小,是共享锁定(true)还是独占锁定(false)public final FileLock tryLock(); //视图获得此通道的独占锁 --try get lock --并不一定能得到所哦public abstract FileLock tryLock(long position,long size,boolean shared);//视图获取此通道指定区域的锁定,并制定锁定位置,锁定大小,属于共享锁定(true)或者独占锁定(false)class Test{  public static void main(String[] args){    File file = new File("d:"+File.separator+"a.txt");    FileOutputStream output = new FileputStream(file);    FileChannel fout = output.getChannel(); //得到通道    FileLock lock = fout.tryLock(); //进行独占锁的操作,注意我们一般用tryLock,因为我们不能保证一定能得到锁    if(lock !=null){       //-------do something       lock.release(); //释放       System.out.println(file.getName()+" 文件解除锁定");    }    fout.close();    output.close();  }}