一个memoryStream的问题 fileStream指向磁盘文件,他的长短是操作系统控制文件分配表来控制的的。可memoryStream得长短是怎样控制的? 如果内容长度超过Capacity值, 具体是怎样分配的? 重新再划分一块大内存空间?那效率是不是也太低了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Reflector反编译看看源码。太多不贴了。 哦,谢谢了. 和stringBuilder的机制一样。 那扩容的时候还是要重新分配一块内存进行复制,大块内容的改写效率还是很低。 效率低不低看你是不是找对了合适的类型。MemoryStream的设计就决定了它只能用于一些特定情况。如果你的应用场景用它不适合,你应该看看有没有其他合适的类型。 比方说从网络端接受文件,文件的大小开始接受的时候并不知道,直道\0才结束, 但是由于效率的问题又不能直接写到磁盘上, 这时候用什么流? 好像也只能是memoyStream吧。 文件如果稍大点,这样效率就太低了。 原来试过400m左右的文件, 直接就内存用完,报OutOfMemoryException异常了。 2g的内存 别听课了,呵呵.直接给分.不过还是希望能有有力的证据,msdn上并没有说明。 OutOfMemoryException的原因很多,但是如果文件真的很大,使用MemoryStream自然就不对,一般都应该直接写到文件里面去了。你看看迅雷之类哪个在内存里面放文件的,各个都是使用磁盘文件。 [C#] 请问byte数组和编码的关系 多个类对共有变量的访问实现 如何向sqlserver插入海量数据? 怎么制作浏览量?? 一道题目的算法,求解!!! 流写入错误。。 MSDN的下载 QQ空间的登录加密算法是什么? .Net Remoting 类的封装问题 有没有办法让listview的第一列为只读,而第二列为可编辑? 怎么将SQl中查询的一行一列的值传送到C#中的变量 水晶报表的合计问题
反编译看看源码。太多不贴了。