3 года назад
Оптимизация java. Кольцевой буфер
Данная статья продолжает цикл моих переводов статей Jakob Jenkov об оптимизации Java приложений. Кольцевой буфер - это массив, который используется в качестве очереди. Кольцевой буфер имеет позиции, которые отмечают следующую позицию для чтения и записи в кольцевой буфер. Когда позиция записи достигает конца массива, она возвращается к 0. То же самое верно и для чтения. Установка позиции чтения и записи обратно на ноль, когда они достигают конца массива, также иногда называется "обтеканием". Именно такое поведение превращает массив в кольцевой буфер...
1 год назад
Java 968. Какой класс-надстройка позволяет ускорить чтение/запись за счет использования буфера?
Класс BufferedInputStream и BufferedOutputStream являются надстройками над InputStream и OutputStream. Они добавляют внутренний буфер, который может ускорить процесс чтения/записи данных. Буферизация обычно полезна, если вы читаете или записываете данные блоками, а не по одному байту. Вот пример использования BufferedInputStream в Java для чтения файла с диска: try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream("file.txt"))) { byte[] buffer = new byte[1024]; int bytesRead = 0; while ((bytesRead = bis...