我想知道如果我失去了一些东西。我有一个非常复杂的应用程序,但它的核心是这样的:.net内存管理在我的应用程序(datagridviews)
我查询一个数据库,它会返回10k-ish条目。
我将这些条目存储在自定义业务对象中。
这些对象被添加到BindingListView,并绑定到datagridview。
现在,随着时间的推移(40多个查询),我的内存使用量不断增加,直到我在第42次查询时发现OutOfMemoryException。
我想知道我没有删除东西或有内存泄漏。我100%确信在下一个查询开始之前,每个业务对象都被正确删除。我真的认为我的所有记忆(通常在应用程序死亡时为1.5gig),都是datagridview行。
要注意:我使用.NET 2.0,VISUAL C++运行VS2008
原来问题出在我的datagridview。更改其数据源不会释放已使用的资源。在更改源之前将其设置为空即触发垃圾回收。 – greggorob64 2011-05-17 14:58:09