Что такое Java NIO и чем оно отличается от традиционного IO?

Middle
268 просмотров
AFK Offer AI

Java IO — блокирующий, один поток на соединение. Java NIO — неблокирующий, один поток может обслуживать много соединений через Selector. Selector регистрирует Channels (SocketChannel, FileChannel) и через select() ждёт когда какой-либо канал готов к чтению/записи. Данные читаются в Buffers (ByteBuffer). Сложнее программировать напрямую — поэтому Netty абстрагирует это в удобный API с event loop.

Следующий вопрос

Что такое MapStruct?