Существует Java-программа, которая считывает файлы из папки, обрабатывает и записывает выходные файлы в другую папку. Он работал в течение 4 часов и произвел несколько файлов, но затем не кинув следующее сообщение об ошибке:java открытые файлы не очищаются, даже когда процесс убит
"too many files"
Затем я изменил программу, чтобы закрыть все (BufferReader и BufferWriter) и снова начал процесс. Но этот процесс времени не удалось сразу после запуска бросая следующую ошибку:
java.io.FileNotFoundException: <file> (Too many open files)
Затем я попытался запустить LSOF и искал процесса, который оказывает наиболее нет открытых файлов. Я понял, что это NetworkManager. Но я не был уверен, должен ли я убить этот процесс или нет. Поэтому я перезапустил машину. Даже после этого, когда я запускал java-программу, у меня все еще была такая же ошибка.
В худшем случае возможно, что мой код по-прежнему имеет некоторые утечки с точки зрения не закрытия всего, но все же он не работает сразу после запуска процесса. Поэтому я чувствую, что что-то лежит в системе с предыдущего запуска. Также, если я запускаю тот же процесс на какой-либо другой машине, он работает в течение нескольких часов перед сбоем.
Покажите нам свой код, чтобы получить четкие ответы !! – Azodious