io和nio的区别是什么 io和nio的区别


io和nio的区别是什么 io和nio的区别

文章插图
io和nio的区别如下:
1、NIO的创建目的是为了让Java程序员可以实现高速I/O而无需编写自定义的本机代码 。NIO将最耗时的I/O操作(即填充和提取缓冲区)转移回操作系统 , 因而可以极大地提高速度 。传统的IO操作属于阻塞型,严重影响程序的运行速度 。
【io和nio的区别是什么 io和nio的区别】2、流与块的比较 。原来的I/O库(在java.io.*中)与NIO最重要的区别是数据打包和传输的方式 。正如前面提到的,原来的I/O以流的方式处理数据,而NIO以块的方式处理数据 。面向流的I/O系统一次一个字节地处理数据 。一个输入流产生一个字节的数据,一个输出流消费一个字节的数据 。为流式数据创建过滤器非常容易 。链接几个过滤器,以便每个过滤器只负责单个复杂处理机制的一部分,这样也是相对简单的 。不利的一面是,面向流的I/O通常相当慢 。

    推荐阅读