中易网

C# 内存释放

答案:3  悬赏:40  
解决时间 2021-04-28 02:34
大哥,以下引用的是你8月12号的提问:
每隔一段的时间就 datagridview.rows.clear(),然后再用datagirdview.row.add添加数据。但是每次这样刷新后好像是内存不能够被释放,导致该程序的内存使用率越来越高,最后直至崩溃。

请问怎么将内存释放?

现在小弟我也遇到了这个问题,麻烦大哥帮帮忙,给点解决思路,谢谢了。
我现在只有20分,全给了。

我在程序中是这样操作的:
1。从串口接收8个字节的数据
2。把数据添加到DataGridView中
3。满20行数据后,清空表格中数据。
最佳答案
datagridview.rows.clear()
只是清除当前的datagridview的数据
并没有清除内存的功能
建议是你看看你的数据连接的时候有释放干净没。
------------------------------------------------
问题应该在你的窜口接受数据那个方法。
你优化一下吧!
全部回答
调用datagridview.rows.clear()以后 再调用一下GC.Collect(),手动让垃圾回收器回收一下试试
1、这个流程确实构造了许多新的对象(panel、bitmapimage、button),所以内存上涨是必然的; 2、其次,由于c#托管的原因,有些临时内存在频繁的循环中可能来不及释放,你可以在每次循环结束时调用gc.gettotalmemory( true )来强制回收当前的垃圾; 如果强制gc还不行的话,那说明你的代码就是要飚内存,那就得改你的流程了,没其他的办法了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
介绍些哀怨,缓慢的歌曲
从公安到张家界怎么坐车?
QQ音乐老是出错
烽火战国分城建拓荒营有啥意义?
哪位大神有芸能,,整容国的百度云~有的发我
有一部小说是说:一个女生爱上了一个男的,后来
火辣辣全羊香地址在哪,我要去那里办事
长隆附近有什么宾馆或者酒店之内?
我想问一下,我在QQ群里发了个文件,但又不小
龙虾死了以后变成空壳
谁能帮我改一首诗、一定要有遗憾的气魄“武剑
广东家庭适合栽种什么花卉?最好花期比较长的
2010年世界杯第一场球赛哪队获胜?
登陆时 弹出个对话框 说
开沃精工与海明威鱼竿哪个好
推荐资讯
追他 有可能吗
迪拜与科威特那个国民更富裕
跪求天津02年到06年会计基础和财经法规真题
杨雨豪是那人?
赵云喜欢的人叫什么
高三理科生选专业、
我准备自己开店子,卖女装的。适合20几岁的年
未来星双语幼儿园怎么去啊,有知道地址的么
广州的百老汇卖怎么手机的
黑建筑 机械制造与自动化专业怎么样? 什么
什么是售后服务?
30岁之前不夺冠,说明詹姆斯是一个伪超级巨星
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?