if (!lockfile.createNewFile()) {
return;
}
-
+
lock = (rafile=new RandomAccessFile(lockfile,"rw")).getChannel().tryLock();
} catch (FileNotFoundException e) {
System.err.println("Error! Couldn't create a lockfile at "
}
return false;
}
-
+ public void release() {
+ if (lock!=null) {
+ try {
+ rafile.close();
+ lock.release();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace(System.err);
+ }
+ }
+ }
/* Explicitly release lock (probably don't need to do this!)
* @see java.lang.Object#finalize()
*/
protected void finalize() throws Throwable {
- if (lock!=null)
- lock.release();
+ release();
super.finalize();
}