Java NIO - Обзор
Пакет Java.nio был представлен в java 1.4. В отличие от ввода-вывода java в Java NIO введен поток данных, ориентированный на буфер и канал для операций ввода-вывода, что в результате обеспечивает более быстрое выполнение и лучшую производительность.
Также NIO API предлагает селекторы, которые вводят функциональность прослушивания нескольких каналов для событий ввода-вывода асинхронным или неблокирующим способом. В NIO наиболее трудоемкие операции ввода-вывода, включая заполнение и опорожнение буферов в операционной системе, которая увеличивается в скорости.
Основные абстракции API-интерфейсов NIO следующие:
Буферы, которые являются контейнерами для данных, кодировок и связанных с ними декодеров и кодировщиков, которые преобразуют байты в символы Юникода.
Каналы различных типов, которые представляют соединения с объектами, способными выполнять операции ввода-вывода.
Селекторы и клавиши выбора, которые вместе с выбираемыми каналами определяют мультиплексированную, неблокирующую возможность ввода / вывода.