0
我的問題如下: 我目前正在廣泛測試我的應用程序,現在我知道它無法處理上傳的大文件。當然,我告訴自己這個問題,AllowWriteStreamBuffering
- 屬性已被設置爲false,但是當我嘗試上傳一個大小爲〜700 Mb的文件時,我的PC凍結了(我有4 Gb RAM,而且我沒有得到一個MemoryOutOfRangeException
)。我無法使用HttpClient
-Class,因爲我必須提供對.NET Framework 4的支持,也不能將上載分塊,因爲目標服務器不支持這種上載。 我認爲內存問題是由於我已發送的數據(上傳時)仍然分配在RAM中導致的。 這些代碼行負責是:使用HttpWebRequest上傳大文件(AllowWriteSteamBuffering不解決此問題)
while ((bytesRead = fileStream.Read(fileBuffer, 0, fileBuffer.Length)) != 0)
{
requestStream.Write(fileBuffer, 0, (int)bytesRead);
}
如何刪除這已經發送,但是仍然使用我的內存中的數據? 如果這不是問題的原因,那我該如何解決呢?