在我的ASP.NET MVC應用程序,我現在用的是NPOI框架來產生一個相當大的Excel文件(30-100mb)IIS內存使用產生大的文檔
後不會再回到正常生成文檔後,我將它保存到一個MemoryStream,並通過使用MVC文件的輔助方法
File(Stream fileStream, string contentType, string fileDownloadName)
這樣
返回FileStreamResult可變文檔是從NPOI框架型「HSSFWorkbook」的
我不知道爲什麼內存使用率居高不下,已產生的文件後,也和流已返回給用戶。 在寫入響應流之後,File方法應該處理流。
如果我再次單擊生成鏈接,內存使用情況會恢復正常,並在文檔再次生成時開始爬升。
難道這是NPOI HSSFWorkbook類未被正確垃圾收集的問題嗎?這隻會是奇怪的,因爲我沒有保存任何靜態變量(至少不是在我的代碼中)。
有人知道爲什麼內存使用不會恢復正常嗎?