A FileLock object is returned by the lock( ) and tryLock( ) methods of FileChannel and represents a lock on a file or a region of a file. See FileChannel for more information on file locking with those methods. When a lock is no longer required, it should be released with the release( ) method. A lock will also be released if the channel is closed, or when the virtual machine terminates. isValid( ) returns TRue if the lock has not yet been released, and returns false if it has been released. The channel( ) , position( ) , size ( ) and isShared( ) methods return basic information about the lock: the FileChannel that was locked, the region of the file that was locked, and whether the lock is shared or exclusive. If the entire file is locked, then the size( ) method returns a value ( Long.MAX_VALUE ) that is much greater than the actual file size. If the underlying operating system does not support shared locks, then isShared( ) may return false even if a shared lock was requested . overlaps( ) is a convenience method that returns true if the position and size of this lock overlap the specified position and size. public abstract class FileLock { // Protected Constructors protected FileLock (FileChannel channel , long position , long size , boolean shared ); // Public Instance Methods public final FileChannel channel ( ); public final boolean isShared ( ); public abstract boolean isValid ( ); public final boolean overlaps (long position , long size ); public final long position ( ); public abstract void release ( ) throws java.io.IOException; public final long size ( ); // Public Methods Overriding Object public final String toString ( ); } Returned ByFileChannel.{lock( ) , tryLock( )} |