Netty类库简介

缓冲区Buffer

最常用的是ByteBuffer,提供了一组功能用于操作byte数组。此外还有以下几个:

  • ByteBuffer:字节缓冲区
  • CharBuffer:字符缓冲区
  • ShortBuffer:短整型缓冲区
  • IntBuffer:整型缓冲区
  • LongBuffer:长整型缓冲区
  • FloatBuffer:浮点型缓冲区
  • DoubleBuffer:双精度浮点型缓冲区

NIO中所有数据都是用缓冲区处理的。它本质上是一个数组,在此基础上又提供了对数据的结构化访问以及维护读写位置等信息。

通道Channel

网络数据通过Channel读取和写入,不同于流的是,这是双向的,即读、写可同时进行;

多路复用器Selector

多路复用器提供选择已经就绪任务的能力。它会不断轮询注册的Channel,如果某个Channel上面发生读或写事件,这个Channel就处于就绪状态,会被Selector轮询出来,然后通过SelectionKey可以获取就绪Channel的集合,进行后续io操作。

你可能感兴趣的:(Java,#,Netty)