2016-11-27 424 views
1

list是VAR這是一個字符串生成器,包括我想從我的ASP.NET網站上下載一個CSV,這條線崩潰的StringBuilder的ToString()拋出內存溢出異常

Exception of type 'System.OutOfMemoryException' was thrown. 

值得一提的是,我的Microsoft.VsHub.Server.HttpHostx64正在使用5GB的內存,而之前並非如此。

我試過如下:

  • 檢查,如果我有WebCompanion卸載[我沒有]
  • 試圖關閉BrowserLink在VS
  • 重新啓動我的機器

在任何情況下,我都有3 GB可用內存,應該足以轉換100 MB字符串。

enter image description here

+3

[「內存不足」不引用物理內存](https://blogs.msdn.microsoft.com/ericlippert/2009/06/08/out-of-memory-does-not-refer-to -physical-memory /) –

+0

是32位還是64位進程?我看到長度屬性= 325M,這相當於650MB的內存。 – apocalypse

+0

我的調試選項是任意的,但它運行的是32位 –

回答

0

原因是上StringBuilder的虛擬上限。如果你沒有使用流,那麼做一個部分閱讀,閱讀字符串達到一定的大小,然後寫入你的文本,然後清空生成器並重復。