我有我寫的Windows應用程序。
我將它安裝在擁有windows server 2008的虛擬服務器(vmware)上,出於某種原因應用程序變得越來越大。我使用性能監視器,才能看到可能存在內存泄漏 - 但據我所知,沒有:
性能問題 - 越來越多的內存和CPU使用
這裏是在任務管理器的proccess:
還有兩個proccesses使用大量的內存和cpu,但是穩定並且不像SimeserManager.exe那樣增長。
內存增長減緩該服務器所在位置上的衝浪。 本週之前,我使用我的應用程序在windows server 2003的phizical服務器上,並沒有衝浪的問題。因爲我沒有它,我無法恢復在phizical機器中的situtaion,但我不相信在使用phizical服務器時存在內存錯誤。
應用程序使用Visual Studio 2010中
是一個什麼問題寫在C#.NET?
我在哪裏可以找到一些線索?
UPDATE
我得到了ANTS內存分析器,並試圖尋找問題。我創建了內存快照,結果如下:
現在我真的迷路了。
我嘗試了標準過濾器,但沒有設法找到問題的線索。在圖像中你可以看到私有字節的增加。這是否存在內存泄漏?
任何人都可以給我一些線索如何繼續?
謝謝!
我聽你的建議,並增加了一個更新的帖子。 – Naor 2011-05-15 08:06:53
@Naor - 這看起來像是「實體框架」中的「問題」。這可能是因爲您只是在應用程序中存儲了大量記錄,或者可能意味着您在完成記錄後並未發佈記錄。它也看起來像你在你的代碼中做一些實體關係。這也可能導致一些內存問題。我會建議,如果你正在爲如何使用探查器而苦惱,那麼你可以看看一些教程。您需要深入探查器和您的應用程序才能找到可能的問題。 – IAmTimCorey 2011-05-15 13:03:47
你說得對。我沒有處理上下文。處置後 - 一切正常。謝謝! – Naor 2011-05-17 23:19:21