主要是通过减少复制的需要.由于面向流的API必须将所有内容移动到托管Java变量中,因此系统必须复制您处理的所有数据.使用NIO库时,Java可以直接映射到OS I/O页面,而无需进行复制(并处理分配和垃圾回收).
基于流的I / O使用流在数据源/接收器和Java程序之间传输数据。Java程序一次从一个字节读取流或向一个字节写入流。这种执行I / O操作的方法很慢。新的输入/输出(NIO)解决了较旧的基于流的I / O中的慢速问题。

在NIO中,您处理用于I / O操作的通道和缓冲区。
频道就像流。它表示数据源/接收器和Java程序之间用于数据传输的连接。

通道和流之间有一个区别。
您可以使用通道读取和写入数据。您可以根据需要获取一个只读通道,一个只写通道或一个读写通道。
现在,您可以借助上图轻松了解io和nio之间的区别。这里有更多细节。
| 归档时间: |
|
| 查看次数: |
2111 次 |
| 最近记录: |