社区
C#
帖子详情
关于BufferedStream类的问题
woshishe
2012-11-27 11:53:41
资料上说BufferedStream就是给另一流上的读写操作添加一个缓冲区,可以提高性能。可是我不是太理解是怎么样的一个过程,比如我初始化一个FileStream,用这个FileStream初始化一个BufferedStream,来读取文件的内容到一个字节数组,这个读取过程应该是将磁盘的信息读取到内存中吧,缓冲区应该也是在内存里吧,为什么就能提高性能?依我看来,中间加了个缓冲区,不是会降低读取的速度吗?请高手给解释一下...
...全文
116
2
打赏
收藏
关于BufferedStream类的问题
资料上说BufferedStream就是给另一流上的读写操作添加一个缓冲区,可以提高性能。可是我不是太理解是怎么样的一个过程,比如我初始化一个FileStream,用这个FileStream初始化一个BufferedStream,来读取文件的内容到一个字节数组,这个读取过程应该是将磁盘的信息读取到内存中吧,缓冲区应该也是在内存里吧,为什么就能提高性能?依我看来,中间加了个缓冲区,不是会降低读取的速度吗?请高手给解释一下...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ksq2010
2012-11-27
打赏
举报
回复
这样的话,就会使得当操作系统读取数据的时候,可以保证操作系统可以读取完我们的缓冲的数据,操作系统通过判断缓冲区的数据是否读取完毕,而进行读取读取,这样提高了操作系统的性能。如果不使用缓冲区,会造成操作系统不知道数据是否接收完整,而去拼命读取,就和你口渴了,想去喝水,却不知道水龙头那有没有水,但是如果放置一个杯子,让杯子去接水,当你看到水杯已经装满的时候,你再去喝 是一个道理。
ksq2010
2012-11-27
打赏
举报
回复
由于操作系统的多任务性,有时候我们读取的数据或者通过通信读取的数据不一定可以实时的立即处理,所以要建立缓冲区先暂存下来,等合适的实际再做处理。
小心使用
Buffer
e
dSt
ream
本文探讨了DotNet中
Buffer
e
dSt
ream
类
的批量读取机制及其潜在
问题
。该
类
通过预读256字节来提高读取效率,但如果实际需求远小于预读量,则可能导致逻辑错误。文章建议在进行精确数据读取时要谨慎使用。
关于c#流
本文详细介绍了C#编程中常用的流
类
,包括FileStream、MemoryStream、
Buffer
e
dSt
ream、NetWorkStream等的基本用法。重点讲解了如何使用这些流
类
进行文件读写、内存数据操作、网络数据传输和服务器客户端通信。同时,还强调了流使用后的关闭、避免内存溢出等
问题
。
C#中
Buffer
e
dSt
ream
类
详解与示例
本文详细介绍了C#中
Buffer
e
dSt
ream
类
的作用、创建方法、读写操作和注意事项,展示了如何通过使用
Buffer
e
dSt
ream提升文件和网络资源的读写性能。
【.Net实用方法总结】 整理并总结System.IO中
Buffer
e
dSt
ream
类
及其方法介绍
本文详细介绍了System.IO命名空间中的
Buffer
e
dSt
ream
类
,这是一个用于提高读写性能的流缓冲层。通过示例代码展示了如何使用
Buffer
e
dSt
ream与NetworkStream结合,对比了使用和不使用
Buffer
e
dSt
ream时的性能差异。
Buffer
e
dSt
ream提供了多种构造函数以自定义缓冲区大小,并提供了读写、关闭流和刷新缓冲区等方法。文章还提及了其他重要的.NET IO
类
,如FileStream、Path、File和Directory。
软考复习之Decorator模式的理解
本文探讨了在面向对象设计中如何利用Decorator模式为对象动态添加新的职责,避免了
类
的无限增加和职责不可重用的
问题
。通过实例分析了继承与组合的优劣,并详细解释了Decorator模式在.NET Framework中的应用,特别提到了如何利用
Buffer
e
dSt
ream和CryptoStream对流操作进行性能提升和数据加密。最后,展示了如何动态组合装饰,实现多个职责的添加。
C#
111,132
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章