[i][b] 一、Java NI/O比传统I/O快主要体现在两方面:[/b][/i]
1.变同步堵塞为异步监听
2.使用面向块操作代替传统的面向流操作
[i][b]二、其它点的相关文章太多,不太好理解的主要是块操作,之所以说NIO更快,体现在如下几点:[/b][/i]
1.操作块(Buffer)而非逐个字节(byte);
2.针对每种基本类型都提供了buffer, 如FloatBuffer,这样更效率方便;
3.对数据的操作仅限于buffer中而非channel中,这样做的好处是只做一道中转
值得一提的flip方法(传统I/O是在Stream中);
4.HeapByteBuffer和DirectByteBuffer, 更灵活高效的进行I/O操作;
5.对传统I/O做了良好的支持和优化;
[color=red]6.Buffer类是从JDK1.4开始的.[/color]
看到最后一点,估计很多原先不理解的人,都会意的笑了。
1.变同步堵塞为异步监听
2.使用面向块操作代替传统的面向流操作
[i][b]二、其它点的相关文章太多,不太好理解的主要是块操作,之所以说NIO更快,体现在如下几点:[/b][/i]
1.操作块(Buffer)而非逐个字节(byte);
2.针对每种基本类型都提供了buffer, 如FloatBuffer,这样更效率方便;
3.对数据的操作仅限于buffer中而非channel中,这样做的好处是只做一道中转
值得一提的flip方法(传统I/O是在Stream中);
4.HeapByteBuffer和DirectByteBuffer, 更灵活高效的进行I/O操作;
5.对传统I/O做了良好的支持和优化;
[color=red]6.Buffer类是从JDK1.4开始的.[/color]
看到最后一点,估计很多原先不理解的人,都会意的笑了。