.NET垃圾回收必須有一個祕密,我現在還不明白。 我們的C#WinForms應用程序有一個對話框,通過OR映射器工具加載非常多的對象。這個過程消耗了大量的內存,我們認爲這些內存大部分都可以被字符串佔用。當我們打開這個對話框時,任務管理器顯示了900MB的內存使用情況,並且通過再次執行查詢,我們得到了內存不足異常。 Whow。c#和垃圾回收
現在我們得到了一些類型的垃圾收集完成時的tipp,當我們最小化應用程序。通過這樣做並再次最大化,應用程序僅消耗10MB。涼。
但是現在,當我們再次執行查詢時,內存消耗突然跳回到900MB,我們再次遇到內存不足異常。
這裏發生了什麼,我們如何減少我們的內存消耗?在這種情況下,如何研究和減少內存消耗?
您是否使用過諸如ANTS Memory Profiler等工具來查看哪些對象佔用了太多內存? –
任務管理器不是診斷此問題的正確工具。 –
你回答了你自己的問題:不要使用太多的記憶! –