4 | Netty:JavaNIO概览
在正式开始Netty相关的学习之前,我决定还是要先回顾一下Java NIO,至少要对Java NIO相关的概念有一个了解,如Channel、ByteBuffer、Selector等。要自己动手写一写相关的demo实例、并且要尽可能地去了解其后面是如何实现的,也就是稍微看看相关jdk的源代码。 Java NIO 由以下几个核心部分组成:Buffer, Channel, Selector。传统的IO操作面向数据流,面向流 的 I/O 系统一次一个字节地处理数据,意味着每次从流中读一个或多个字节,直至完成,数据没有被缓存在任何地方;NIO操作面向缓冲区( 面向块),数据从Channel读取到Buffer缓冲区,随后在Buffer中处理数据。 Buffer 可以理解成煤矿里面挖煤的小车,把煤从井底运地面上面。它的属性与子类如下: Buffer是一个抽象类,继承自Object,拥有多个子类。此类在JDK源码中的注释如下: A container for data of a specific primitive type. A buffer is