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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhangqingbin 中级黑马   /  2015-10-30 17:14  /  475 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么普通流不如高效流快?   都是从缓冲区出来的

8 个回复

倒序浏览
普通流不是吧。
回复 使用道具 举报
你是说加了Buffered修饰的流么》?高效是指内存读取的次数少了,所以高效

点评

它可以一次读取一个缓冲区的内容啊,不是逐个字节读取了啊,所以访问硬盘的次数少了,所以高效  发表于 2015-11-1 21:59
他如果new了一个数组的大小之后每次长度一样的话怎么还是高效流快?  发表于 2015-10-30 22:15
回复 使用道具 举报

额,好像是的,都是从缓冲区刷到存储设备中的么
回复 使用道具 举报
新手理解,错误请指教:buffer里边有一个缓冲区,是从硬盘读到buffer里的,然后我们在定义一个数组,reader流就是每次从硬盘读取到数组;buffer流是每次从硬盘读取到自己内部的缓冲数组比较大,每次你从buffer的缓冲区读到自己的数组,,不用每次都读取硬盘,只有在buffer自己的缓冲区里没有数据时才再次读取硬盘数据。。
回复 使用道具 举报
普通流是读一次,写一次。Buff是读取一次,在缓存中,到缓存满的时候写入磁盘。减少写入磁盘次数

点评

哦,懂了,谢谢  发表于 2015-11-1 18:10
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马