tuning
Немного о Java I/O производительности
10/25/2006 - 17:16
Tagged
Работая над производительностью одного java проекта, я нашел что наиболее узкое место - это метод copy в утилитах file. Метод был реализован без использования буфера. Реализация была следующая: простой цикл while, в котором читался входящий поток, и сразу прочитанные данные писались в исходящий поток.
Есть хорошая статья о производительности ввода/вывода на сайте sun.
Пример 4-4 из статьи выглядит подходящим, но, как оказывается, и он не идеален. На это есть причины: моё приложение многопоточное. Каждый раз, когда я делаю синхронизацию по статическому полю, я создаю узкое место в программе – потому, что все потоки будут блокироваться, ожидая входа в синхронизированный блок кода.