Мое приложение Java (которое довольно немного кода) выполняет множество операций с файлами. В какой-то момент в моем приложении мне нужно переместить файл из одного места в другое, и для этого я использую метод Files.move
из JDK7.
Когда я пытаюсь это сделать, я получаю сообщение об ошибке, указывающее, что файл используется. Я знаю, что это часть моего кода, которая блокирует этот ресурс.
Как заставить мое приложение Java освободить все блокировки до вызова функции, которая перемещает/переименовывает мой файл?
Если это невозможно, есть ли простой способ проверить, какая часть моего кода блокирует файл? Трудясь через всю мою кодовую базу, чтобы найти закрытые файловые дескрипторы, был бы кошмар с учетом количества кода.
Спасибо