12.1.2 缓冲流

12.1.2 缓冲流

对数据流的每次操作都是以字节为单位进行,即可以向输出流写入一个字节,或输入流中读取一个字节,但是这样数据的传输效率很低。为提高数据的传输效率,通常使用缓冲流(buffered stream),即为每一个流分配有一个缓冲区(buffer),一个缓冲区就是专门用于传送数据的一块内存。

当向一个缓冲流写入数据时,系统将数据发送到缓冲区,而不是直接发送到外部设备。缓冲区自动记录数据,当缓冲区满时,系统将数据全部发送到相应的设备。

当从一个缓冲流中读取数据时,系统实际是从缓冲区中读取数据。当缓冲区空时,系统就会从相关设备自动读取数据,并读取尽可能多的数据充满缓冲区。

因此,缓冲流提高了内存与外部设备之间的传输效率。