2010-09-03 145 views

回答

8

恭喜,您發現了.NET框架中的一個錯誤。它由十六進制中的字節值0xef引起。這是UTF-8 BOM的第一個字節。這當然不是一個完整的BOM,接下來的兩個字節丟失了。然而,它足以使StreamReader發生混淆,它一直試圖從數據流中讀取數據,而沒有到達任何地方,在嘗試時耗費內存。 OOM最終是下一個。

此錯誤也出現在.NET 4.0中。錯誤的確切來源很難追蹤,所涉及的代碼不包含在參考源中。它可能被分類爲一個關鍵的因爲它可以用於DOS攻擊。您可以在connect.microsoft.com上報告該錯誤。讓我知道如果你不想,我會報告它(MVP稅)。

+0

已打開的錯誤#594588 – skb 2010-09-03 21:23:10

+0

Upvoted。 URL:http://connect.microsoft.com/VisualStudio/feedback/details/594588/why-does-streamreader-readline-throw-outofmemoryexception – 2010-09-03 21:32:15

相關問題