NIO基础

三大组件

channel

读写数据的双向通道

selector

通过引入一个selector实现一个线程同时监控多个channel

适合连接数特别多,但流量低的场景

bytebuffer

使用

往buffer写入数据,channel.read()

从buffer读取数据,buffer.get()

切换写读模式,filp

清空

结构

ByteBuffer 有以下重要属性

    * <font style="color:rgb(31, 35, 40);">capacity</font>
    * <font style="color:rgb(31, 35, 40);">position</font>
    * <font style="color:rgb(31, 35, 40);">limit