日期:2014-05-20  浏览次数:21294 次

老问题DataGridView内存释放
我有一个DataGridView,   如果我多次绑定数据之后,内存是一路狂涨,在看了前辈们的答案.
---------------------------------------------------
to   在通讯程序中,我把接收到的数据自动插入到DataGridView控件中,每个一分钟dataGridView1.Rows.Clear();但是内存空间还是不但上涨,程序在运行十几个小时后,死机了!!

通过绑定,还是直接插入?
如果是前者的话,删除数据源数据;同时定时调用“GC.Collect()”试试
如果是后者,定时调用“GC.Collect()”试试
---------------------------------------------------
我用了这个方法,内存上涨的速度变慢了,从每绑定一次增加2M,变成1M了,但如果我绑定个几十次,也是不得了,程序都关不了,一关就挂.
还有,经过我测试,我光把数据提出来,不绑定到DataGridView里面,内存基本上不会有多大变化,还有如果我绑定数据之后,立即调用DataGridView的Dispose()方法,内存也没什么变化,因此,基本上可以确定是DataGridView的问题,并且是其内存不能释放的问题,哪位高手有什么招没?

分不够,另外开贴加.........

因为以前是玩Asp.Net的,对WinForm不是太熟,昨天就为了一个进度条我就搞了好久,后来还是自己google解决了,但这个我真的没辙了,望各位兄弟姐妹们支招...

------解决方案--------------------
这个是小意思。

看内存不顺眼就“最小化”程序。
------解决方案--------------------
呵呵 楼主辛苦了 来接分
------解决方案--------------------
呵呵 楼主辛苦了 来接分

------解决方案--------------------
找到地方了提示我一下哈
楼主辛苦了
------解决方案--------------------
好问题,帮顶,顺便Mark一下
------解决方案--------------------
顶。
------解决方案--------------------
只需要对数据集Clear(),Fill()
------解决方案--------------------
to 我用了这个方法,内存上涨的速度变慢了,从每绑定一次增加2M,变成1M了,但如果我绑定个几十次,也是不得了,程序都关不了,一关就挂.

为什么要重复绑定呢
------解决方案--------------------
为什么要重复绑定呢?
没理解绑定的意思!