首页  

NIO概述     所属分类 nio 浏览量 971
NIO三大核心组件 Channel Buffer  Selector

BIO基于字节流和字符流进行操作,
NIO基于Channel和Buffer进行操作,数据从通道读取到缓冲区,或者从缓冲区写入到通道。
Selector用于监听多个通道的事件(比如 连接打开,数据到达)
单个线程可以监听多个数据通道

BIO 面向流 ,NIO 面向缓冲区

阻塞   非阻塞

Channel

FileChannel
SocketChannel
ServerSocketChannel
DatagramChannel

文件IO  TCP(Server和Client) UDP

NIO IO 适用场景

NIO 大量连接,每次只是发送少量数据,例如聊天服务器 
BIO 少量连接,每次要发送大量的数据 ,譬如文件上传下载


Buffer
ByteBuffer CharBuffer DoubleBuffer FloatBuffer IntBuffer LongBuffer ShortBuffer
MappedByteBuffer, HeapByteBuffer, DirectByteBuffer


Selector
向Selector注册Channel

FileChannel

https://gitee.com/dyyx/hellocode/blob/master/src/nio/FileChannelTest.java

上一篇     下一篇
网络IO模型

G1调优建议

检查硬盘是否为SSD

第一个 NIO server 例子

Java NIO 注意点

Java NIO写事件处理技巧