Name

FileLock

Synopsis

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 ...

Get Java in a Nutshell, 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.