社区
C#
帖子详情
关于BufferedStream类的问题
woshishe
2012-11-27 11:53:41
资料上说BufferedStream就是给另一流上的读写操作添加一个缓冲区,可以提高性能。可是我不是太理解是怎么样的一个过程,比如我初始化一个FileStream,用这个FileStream初始化一个BufferedStream,来读取文件的内容到一个字节数组,这个读取过程应该是将磁盘的信息读取到内存中吧,缓冲区应该也是在内存里吧,为什么就能提高性能?依我看来,中间加了个缓冲区,不是会降低读取的速度吗?请高手给解释一下...
...全文
118
2
打赏
收藏
关于BufferedStream类的问题
资料上说BufferedStream就是给另一流上的读写操作添加一个缓冲区,可以提高性能。可是我不是太理解是怎么样的一个过程,比如我初始化一个FileStream,用这个FileStream初始化一个BufferedStream,来读取文件的内容到一个字节数组,这个读取过程应该是将磁盘的信息读取到内存中吧,缓冲区应该也是在内存里吧,为什么就能提高性能?依我看来,中间加了个缓冲区,不是会降低读取的速度吗?请高手给解释一下...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ksq2010
2012-11-27
打赏
举报
回复
这样的话,就会使得当操作系统读取数据的时候,可以保证操作系统可以读取完我们的缓冲的数据,操作系统通过判断缓冲区的数据是否读取完毕,而进行读取读取,这样提高了操作系统的性能。如果不使用缓冲区,会造成操作系统不知道数据是否接收完整,而去拼命读取,就和你口渴了,想去喝水,却不知道水龙头那有没有水,但是如果放置一个杯子,让杯子去接水,当你看到水杯已经装满的时候,你再去喝 是一个道理。
ksq2010
2012-11-27
打赏
举报
回复
由于操作系统的多任务性,有时候我们读取的数据或者通过通信读取的数据不一定可以实时的立即处理,所以要建立缓冲区先暂存下来,等合适的实际再做处理。
小心使用
Buffer
e
dSt
ream
小心使用
Buffer
e
dSt
ream DotNet下有个
Buffer
e
dSt
ream
类
,一些文档说了它的好处,主要是提高性能等等。但好像没人说它会带来的
问题
。我想可能因为大家对里面的原理了解不深。 我综合了许多资料,发现
Buffer
e
dSt
ream核心就是要实现批量Read和批量Write,我不讨论Write,下面只讨论Read的原理,优点和
问题
。 我
关于c#流
C#流的简单认识 前言 本篇文章简单总结了在C#编程中经常会用到的一些流。比如说FileStream、MemoryStream、
Buffer
e
dSt
ream、 NetWorkStream、 StreamReader/StreamWriter、 TextReader/TextWriter等的简单用法。 内容 一 FileStream
类
FileStream
类
...
C#中
Buffer
e
dSt
ream
类
详解与示例
提供缓冲区,减少对底层流的直接访问。提高读写操作的速度,尤其是在处理大量数据时。可以配置缓冲区大小,以适应不同的应用需求。优化对文件、网络资源等底层流的读写性能。作为其他非缓冲流(如FileStream、NetworkStream)的包装器,增加缓冲功能。
【.Net实用方法总结】 整理并总结System.IO中
Buffer
e
dSt
ream
类
及其方法介绍
本文主要介绍System.IO命名空间的
Buffer
e
dSt
ream
类
,介绍其常用的方法和示例说明。
软考复习之Decorator模式的理解
一、模式概述 一个场景是我们要为一个对象动态添加新的职责,这个职责并不修改原有的行为,而是在原有行为基础上添加新的功能,就好比装饰工人为一座新居的墙上涂抹上色彩缤纷的颜料一般。 从我们拥有的面向对象的知识出发,为一个对象增加新的职责,完全可以利用继承机制,然而再通过实例化派生的子
类
,来获得新增的职责。由于需要在原有行为基础上添加新功能,此时父
类
的方法应该为虚方法,例如用户登录行为: publ
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章