Mega Code Archive

 
Categories / Java Tutorial / File
 

Test overlapping locks on different file channels

import java.io.RandomAccessFile; import java.nio.channels.FileChannel; import java.nio.channels.FileLock; public class MainClass {   public static void main(String[] argv) throws Exception {     String filename = "test.dat";     RandomAccessFile raf1 = new RandomAccessFile(filename, "rw");     FileChannel fc1 = raf1.getChannel();     RandomAccessFile raf2 = new RandomAccessFile(filename, "rw");     FileChannel fc2 = raf2.getChannel();     System.out.println("Grabbing first lock");     FileLock lock1 = fc1.lock(0L, Integer.MAX_VALUE, false);     System.out.println("Grabbing second lock");     FileLock lock2 = fc2.lock(5, 10, false);     System.out.println("Exiting");   } }