A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhouxp3323 黑马帝   /  2012-3-24 13:07  /  1795 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

读和写的时候,都是先把数据存入到流中吗?然后缓冲流的意思是先把数据存入到缓冲流中,再一次读或写吗?

3 个回复

倒序浏览
读和写是先把数据读写到流中
回复 使用道具 举报
本帖最后由 陈汉帆 于 2012-3-24 13:35 编辑

缓冲区的作用是为了减少系统对硬盘的读写次数,如果不使用缓冲流,每次读一个字节,在写一个字节,硬盘读写会很频繁,而硬盘读写的速度又很慢,所以使用缓冲流,先把一块数据读到缓冲区(内存)中,再从缓冲区写到硬盘,内存的读写速度远大于硬盘,这样就减少硬盘的读写次数就大大提高读写效率了
回复 使用道具 举报
要把水龙头流出来的水弄到水缸里面去,要是没有缓冲池,每流出一滴水,你都要跑两趟水龙头与缸之间的距离(这个在传文件的时候就是磁盘读写的时间),而当你有一个缓冲池(比如盆),你可以等盆满了再把水弄过去(这之间你可以做其他的事,在JAVA中,你就是“CPU”。所以有缓冲区的话,你可以节省CPU的大量时间,而且可以对缓冲区中的数据进行集中读写,这样不必每来一个数据你去到磁道上搜索地址,然后再回来接受数据,再去搜索地址存取数据,再回来接受数据。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马