VC 有关ado内存泄漏方面的问题,请高手指点

Butterfly_King 2007-03-26 01:41:50
本人最近发现了一个ado方面的问题,一直没有找到相关资料。想请高手指点。

我使用ado访问SQL server 2000数据库,想得到一张人员表总的记录数(大概有三万条记录),程序如下:

_ConnectionPtr m_pC;
_RecordsetPtr pR;
_variant_t v;

......

SQL.Format("select count(*) from T_Employee");
pR=m_pC->Execute(_bstr_t(SQL),&v,adCmdText);
......


在执行pR=m_pC->Execute(_bstr_t(SQL),&v,adCmdText)的时候内存明显增加,一开始我以为是_RecordsetPtr对象没有被释放。但是我单独执行m_pC->Execute(_bstr_t(SQL),&v,adCmdText)的时候内存同样会有明显的增加。
即使退出程序内存也会比执行前增加很多,可如果我第二次执行的时候内存的变化就不大。重新启动计算机以后执行,内存又会有明显增加。

我是一个初学者,希望各位高手能给我一些指点,多谢!
...全文
341 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Butterfly_King 2007-03-26
  • 打赏
  • 举报
回复
to:hongqi162(失踪的月亮)
我看了一下,是数据库服务器占用的,如何才能将数据库服务器占用的资源释放掉呢?

to:skypu(小土豆)
我用来试验的程序非常简单,没有内存泄露的问题

skypu 2007-03-26
  • 打赏
  • 举报
回复
你用F5debug模式有没有报告内存泄露?
试试看用CMemoryState来检测一下
hongqi162 2007-03-26
  • 打赏
  • 举报
回复
如果数据库服务器在本地,你再任务管理器里看一下 增加的内存来自于应用程序还是你的数据库服务器
modaoshi3002 2007-03-26
  • 打赏
  • 举报
回复
恩,关注,帮顶
mochen5460 2007-03-26
  • 打赏
  • 举报
回复
mark

4,018

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧