NIO概述
所属分类 nio
浏览量 1112
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写事件处理技巧