摘要:
1.为什么使用selector? selector是javaNIO中的能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。事实上,可以只用一个线程处理所有的通道。增加系统的吞吐量,提高服务性能。 2.selector的创建 selector的创建是通过静态方法open来进行创建一个系统默认配置的selector。也可通过调用自定义选择器提供程序的 openSel... 阅读全文
摘要:
用了很久,写一些随笔。 Buffer是javaNio中的一个主要对象,用来向channel发送数据。 buffer中有三个概念需要记着: position:现在指针所在的位置。 limit:可以读写的最大范围。 capacity:总的容量大小。 几个常用的方法: flip():将buffer由写模式转换到读模式。在读模式下,可以读取之前写入到buffer的所有数据。其实就是limit... 阅读全文
摘要:
1. 引言 流:所谓“流”,就是指能够产生数据的数据源或者是指能够接收数据的数据源。可以将“流”想象成水龙头。 输入流是指能够产生数据的流,就像水龙头的出水口,比如以inputstrem或Reader结尾的类。既然是输出的流,里面存放的就是有可以输出的东西,通过read方法,可以将存放在流里面的东西输出到指定的字节数组或者字符数组之中。 输出流是指能够接收数据的流,就像水龙头的进水口,比如以... 阅读全文