首页 新闻 会员 周边 捐助

[.NET]什么时候建议使用FileStream?什么时候使用MemoryStream?

0
悬赏园豆:10 [已解决问题] 解决于 2020-08-21 15:15

另外,这两个流对于内存的占用哪个更大?
资料说内存流是把数据全部塞到内存里,但是文件流可以结合缓冲流进行读写,是不是文件流对内存占用更小一些?

现在对一种结构比较复杂的二进制数据进行读写操作,虽然大于100M的情况很少,但是也的确有过,不知道哪个对内存的要求少一些,还是说主要关注点应该放在GC上?

岭南灯火的主页 岭南灯火 | 初学一级 | 园豆:193
提问于:2020-08-14 02:17
< >
分享
最佳答案
1

什么时候建议使用FileStream?

需要持久化存储为文件,或者内存太小不够处理的时候

什么时候使用MemoryStream?

处理临时数据流,内存足够大。方便计算处理

这两个流对于内存的占用哪个更大?

当然是MemoryStream,所有数据都在内存

如果非常希望节约内存占用率,可以将数据存储到文件,需要的时候读取一部分数据进行处理。不过别忘了磁盘IO是有性能损失的

收获园豆:10
sweetjian | 菜鸟二级 |园豆:276 | 2020-08-21 15:10

现在随着实践,确实MemoryStream在内存里,作为片段数据可以存在这,然后待此片段写入完毕,丢去文件流写入磁盘不错

岭南灯火 | 园豆:193 (初学一级) | 2020-08-21 15:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册