У меня есть процесс Java, который открывает файл с помощью FileReader. Как я могу предотвратить открытие другого процесса (Java) или, по крайней мере, уведомить тот второй процесс, который файл уже открыт? Получает ли это автоматически второй процесс, если файл открыт (который решает мою проблему) или я должен явно открыть его в первом процессе с каким -то флагом или аргументом? Он обрабатывает каждый файл за другим. Обработка каждого файла состоит из чтения и выполнения некоторых вычислений на основе содержимого, и это занимает около 2 минут. У меня также есть еще одно приложение Java, которое делает то же самое, но вместо этого пишет в файле. Я хочу иметь возможность одновременно запускать эти приложения, чтобы сценарий был так. ReadApp перечисляет папку и находит файлы A, B, C. Он открывает файл A и начинает чтение. Writeapp перечисляет папку и находит файлы a, b, c. Он открывает файл a, видит, что является открытым (исключением или любым способом) и переходит в файл B. readapp file a и продолжает B. Он видит, что он открыт и продолжает C. Крайне важно, что Writeapp не пишет, пока чтение читает один и тот же файл или наоборот. Это разные процессы.
Подробнее здесь: https://stackoverflow.com/questions/128 ... using-java
Как я могу заблокировать файл с помощью Java? ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение