nio
Starrk__
你指尖跃动的代码,是我此生不变的信仰!
道之所向,虽九死其犹未悔!
展开
-
NIO学习笔记(一)Buffer
1:buffer就是数组,各类型除boolean外有对应的数据类型的缓冲区。2:通过allocate方法分配缓冲区,可指定大小。3:put,get 存取数据4:缓冲区中4个核心属性: - 1 capacity :容量,表示缓冲区中最大存储数据的容量,一旦声明不能改变 - 2 limit:界限,表示缓冲区中可以操作数据的大小。 - 3 position 位置,表示缓冲区中正在操作数据的...原创 2018-12-16 15:56:00 · 219 阅读 · 1 评论 -
NIO学习笔记(二)channel
CPU—中央处理器Channel —独立的处理器–专门用于IO–附属于CPU1:用于源节点与目标节点的链接,在JAVA NIO中负责缓冲区中数据的传输。channel本身不存储数据,需要配合缓冲区进行传输。2:主要分类java.nio.channels.Channel| – FileChannel| – SocketChannel| – ServerSocketChannel| ...原创 2018-12-16 17:01:12 · 240 阅读 · 0 评论 -
NIO学习笔记(三)scatter/Gather与Charset
1: 分散读取,从channel中读取的数据分散到多个buffer聚集写入,将多个buffer中的数据聚集到channel中按顺序读取/写入操做的是缓冲区数组2:字符集 :Charset编码 :字符串->字节数组解码 :字节数组->字符串通过Charset对象的newEncoder/newDecoder()获取编解码器...原创 2018-12-16 17:20:01 · 142 阅读 · 0 评论 -
NIO学习笔记(四)selector选择器
1.监听所有注册在selector上的channel,只有当数据准备完成后,才会创建服务端线程,完成io操作2.Selector可以被所有继承了SelectableChannel类的channel注册,但是只有FileChannel例外,因为它没有继承这个抽象类。3.选择器类管理着一个被注册的channel集合信息和他们的就绪状态,选择器和channel是一起被注册的,一个channel可以注...原创 2018-12-16 23:13:10 · 184 阅读 · 0 评论