파일 잠금
파일 잠금 (FileLock)
파일의 영역을 잠그는 토큰을 나타내는 클래스예요. 파일 채널로 획득한 잠금을 관리하고 해제하는 데 사용합니다.
본문
FileLock은 파일의 특정 영역을 잠그는 토큰을 나타내는 클래스예요.
public abstract class FileLock extends Object implements AutoCloseable
파일 잠금은 FileChannel.lock() 또는 tryLock()으로 획득할 수 있어요.
public abstract boolean isValid()
public abstract void release() throws IOException
public abstract FileChannel channel()
public abstract long position()
public abstract long size()
public abstract boolean isShared()
public abstract boolean overlaps(long position, long size)
isValid()— 잠금이 여전히 유효한지 확인해요.release()— 잠금을 해제해요. 파일 채널이 닫히면 잠금도 자동으로 해제됩니다.channel()— 잠금을 획득한 채널을 반환해요.position()/size()— 잠긴 영역의 시작 위치와 크기를 반환해요.isShared()— 공유 잠금인지 배타 잠금인지 알려줍니다.overlaps()— 다른 잠금과 영역이 겹치는지 판단해요.
같은 JVM이 이미 잠근 영역과 겹치는 영역을 다시 잠그려 하면 OverlappingFileLockException이 던져질 수 있어요.