C# 数据库查询后释放资源的问题

我是个新手,用C#编一个小软件,软件正常运行时占用大概25兆的内存,但是当我用软件查询数据库某表的数据并显示在datagridview上时,软件的内存变成了60多兆,(查... 我是个新手,用C#编一个小软件,软件正常运行时占用大概25兆的内存,但是当我用软件查询数据库某表的数据并显示在datagridview上时,软件的内存变成了60多兆,(查询了大概1000多调数据),请问给位有什么方法可以把内存都释放掉? 展开
 我来答
xudeng0129
2008-09-09 · TA获得超过191个赞
知道答主
回答量:207
采纳率:0%
帮助的人:0
展开全部
和数据库没关系啊。
是不是数据库和软件同台服务器上,那就用好关掉。

你看看有没有重复创建,多余创建的对象
如果没有,那也没办法,不过一般1000多条数据没这么多的
真有这么大也没办法,等GC来回收吧
liuleiqt
2008-09-09 · TA获得超过1285个赞
知道小有建树答主
回答量:1953
采纳率:0%
帮助的人:376万
展开全部
即使是数据库服务器和程序都在一台机器上 也不应该增加这么多啊
除非数据库用的是oracle,缓冲pool设置的比较大

因为控件是datagridview可见是win form程序
就排除了页面编译后缓存问题
那注意一下,在查询程序中finally里面把connection close了

datagridview的数据源的table是查询的时候生成的,而不是自己一行行的写的吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
312121668
2008-09-09
知道答主
回答量:45
采纳率:0%
帮助的人:22.7万
展开全部
查询完你释放资源就行了

查询完后用close()关闭连接

用Dispose()释放资源
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aideqiuqian7
2008-09-09 · TA获得超过648个赞
知道小有建树答主
回答量:417
采纳率:0%
帮助的人:314万
展开全部
SqlDataReader sdr1 = com1.ExecuteReader();
操作完后一定要
sdr1.Close();

后边的

sqlconnection con

同样
con.Close();

试一试。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xsshn000
2008-09-19 · 超过25用户采纳过TA的回答
知道答主
回答量:306
采纳率:0%
帮助的人:93.8万
展开全部
con.colse();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式