在我的Windows服務中,在巨大的工作負載下運行數小時後,我遭受了「內存不足」異常的困擾。 我用下面的性能計數器來檢測內存泄漏:越來越多的「虛擬字節」性能計數器
字節的所有堆
- 專用字節
- 虛擬字節
第2個計數器會向上和向下定期...我看不出他們有什麼不妥。 但第三個增長速度非常緩慢,櫃檯也在升降,但最終會逐漸增加。 這是什麼意思?
我的Win服務是.NET,它從C++ DLL調用一些函數,也使用第三方,它有一些非託管代碼。
這是否表明託管代碼/非託管代碼中存在內存泄漏?或者乾脆這不會幫助?
感謝
沒有足夠的信息來回答問題。你在C#代碼中分配內存嗎?你可以發佈代碼嗎? – 2010-02-02 14:40:49
C++ DLL不是我的代碼,它們都是第三方,我在我的託管代碼中分配和釋放大量資源,我不能將它們全部發布,它們太多了,其中一些與GDI +,ADO有關。 NET和許多其他類型的對象。我也相信非託管代碼經常這樣做(由於其功能) – 2010-02-02 15:02:58