В настоящее время я пытаюсь заблокировать файл в Java, чтобы другие методы не могли его использовать.
File someFile = new File(somePath);
FileLock lock = null;
FileChannel fromFileChannel = null;
FileOutputStream fromFileStream = null;
try {
someFile.createNewFile();
writeStringToFile(randomString, someFile);
fromFileStream = new FileOutputStream(someFile);
fromFileChannel = fromFileStream.getChannel();
lock = fromFileChannel.lock(0L, Long.MAX_VALUE, false);
} catch (IOException e) {
fail();
}
System.out.println(someFile.canRead());
System.out.println(someFile.canWrite());
Но почему оба canRead и canWrite возвращают true? Блокировка имеет значение только для FileChannel?
Большое спасибо