Java NIO Channel和Buffer

Java NIO Channel和Buffer

 @author ixenos

 

 

 

Channel和Buffer的关系


 

1、NIO速度的提高来自于所使用的结构更接近于OS执行I/O的方式:通道缓冲器;

2、通道是一个包含煤层(数据)的矿藏,而缓冲器则是派送到矿藏的卡车(容器);卡车满载而归,我们再从卡车上获得煤炭,也就是说我们没有跟通道直接交互,而只是跟缓冲器交互,并把缓冲器派送到通道;

3、区别FileChannel的position和Buffer的position,前者是数据所在的绝对位置(用来指示读取的元素),后者是容器中的相对位置(用来指示读取进度)

 

 

使用Buffer


 

 

 

 

 使用Channel


 

 

 

posted @ 2016-12-22 10:27  ixenos  阅读(367)  评论(3编辑  收藏  举报