Есть код, который читает данные из CSV файла, используя библиотеку apache csv commons. Метод, который загружает данные из файла вызывается дважды, ему в параметры передается путь к файлу. Имеет место странная ситуация - обработка каждого следующего файла занимает намного больше времени чем предидущего. Причем, даже если вызвать этот метод два раза подряд на одном и том же файле, второй раз все равно будет намного медленее. Намного медленее выполняется та часть, которая проходит по столбцам CSV таблицы. Причем эта часть вообще не взаимодействует с внешним контекстом(полями класса, глобальными переменными и т.д.).
Структура кода вот такая
Reader in = new BufferedReader(new FileReader(csvFile.toFile()), 1048576 * 10);
CSVParser csvParser = new CSVParser(in, CSVFormat.newFormat('|'));
for (CSVRecord row : csvParser) {
Iterator<String> cellIterator = row.iterator();
while (cellIterator.hasNext()) {
String cell = cellIterator.next();
if (cell == null) {
break;
}
if (emptyCounter > 50) {
break;
}
// HERE CELL VALUE IS PROCESSED
}
}
csvParser.close();
В чем может быть проблема?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
в приложении есть ViewPager c фрагментами и в каждом из них есть список RecyclerViewпри нажатии на каждый item списка создается новый фрагмент методом...
Хочу сделать программу простую, которая пингует сервераРаботает так: InetAddress
после запуска приложения на heroku (telegram бот без использования спринга, собираемый с помощью maven) где то через минуту работы оно крашитсяЯ так...
Как это возможно и как от этого избавиться? Использую состояние React