各位达人,最近碰到一个问题,我们的程序出现了使用以后消耗大量内存的情况,使用时间越长消耗越多,最后导致死机.请教各位,导致这种情况出现的问题在哪,如何检测程序对内存的消耗~?有什么办法解决
 程序定时访问数据库 存储数据 需要调用一些存储过程 没有使用频繁的new和delete操作.
请问是什么原因导致的 谢谢?

解决方案 »

  1.   

    不是有trace工具么?你可以跟踪一下
      

  2.   

    1、“没有使用频繁的new和delete操作”,不等于没有!可能存在new了,而没有delete;
    2、GDI对象使用后,是否DeleteObject,GetDC后是否release了等等。
      

  3.   

    debug模式下,运行。看output窗口有没有显示内存泄露的信息
      

  4.   

    debug模式下,运行。看output窗口有没有显示内存泄露的信息若有泄露:请检查一下两种情况
    1、“没有使用频繁的new和delete操作”,不等于没有!可能存在new了,而没有delete; 
    2、GDI对象使用后,是否DeleteObject,GetDC后是否release了等等。
      

  5.   

    多谢 ,程序最近才发现这个问题,在改动过程中.
    主要是使用CMap类. 不断添加和移除项, 其它数组应该也是清空了.
    现在怀疑是否是CString类导致的