Я хотел бы иметь метод, который возвращает список BufferedReader
объектов (например, для всех файлов в каталоге):
private List<BufferedReader> getInputReaders(List<String> filenames) {
List<BufferedReader> result = new ArrayList<BufferedReader>();
for(String filename : filenames)
result.add(new BufferedReader(new InputStreamReader(new FileInputStream(filename), "UTF-8")));
}
return result;
}
Это будет большая трата ресурсов?
Будут ли все эти потоки открыты в момент создания и останутся ли они, следовательно, удерживая системные ресурсы?
Если да, могу ли я создать эти читатели в «пассивном» режиме без фактического открытия потоков, или есть какой-то другой обходной путь (чтобы я мог безопасно создать список с тысячами читателей)?