我需要将许多MB的数组字节分配到MemoryStream对象中。
有时,当我的应用程序在OS 32位系统上作为x86运行时,我得到OutOfMemory异常。
cose如下所示:
<div class="form-group">
<label>Status</label>
<select style="width: 200px" class="form-control" id="status" name="status" required>
<option value="0" @if($igcse->status=='0') selected @endif>Please Select</option>
<option value="ACTIVE" @if($igcse->status=='ACTIVE') selected @endif>ACTIVE</option>
<option value="WITHDRAW" @if($igcse->status=='WITHDRAW') selected @endif>WITHDRAW</option>'
<option value="GRADUATE" @if($igcse->status=='GRADUATE') selected @endif>GRADUATE</option>
</select>
</div>
我想知道是否可以通过在循环代码中写入MemoryStream来分配内存,就像这样:
MemoryStrem ms = new MemoryStream();
ms.Write(myObject.FieldOfArrayBytes);
可以做一些不同的事情吗?
@EDIT 在阅读其他不同的文章后,我认为最好的解决方案是将我的数组字节分配到内存流列表中。这样,如果我没有足够的contiguos内存,我就能够在碎片化的内存部分(虚拟或物理)中分配大数据。