我的程序中根本就没有使用申请内存的函数GETMEM,只使用了一些全局数组静态和动态数组及STRING 类型的记录,也没有使用指针类型。
但是我发现通讯过程中很大的内存泄露,通讯一天一夜就吞噬了我的256M内存,太可怕了。大家给点意见,在DELPHI中出现内存泄露有那几种情况?怎么来检测泄露的地方?
郁闷死我了。两天没有睡着啊!!!
   不会DELPHI中的内存管理能力太差吧?

解决方案 »

  1.   

    会不会是你的动态数组设定有问题?或者是使用了一些诸如文件、INI事件、或者tstringlist变量之类的东西?如果是,那么用完后就释放
      

  2.   

    我用了读写TXT、INI文件,但是在其中我只CREATE了一次啊。
    程序关闭的时候我才FREE了。
    动态数组要怎么多次SETLENGTH不会有问题吧?
      

  3.   

    你试一试把读写INI、TXT用完立刻就释放看看还会不会占用如此多内存,并且如果你的动态分配比较频繁而且很大,那么一定要用完就释放。
      

  4.   

    delphi有一个检测内存的软件工具,你去寻找一下,看看情况!
      

  5.   

    肯定是你用的全局!全局!动态数组问题,没有及时释放,建议用TstringList
      

  6.   

    动态数据用好之后,也要撤消内存,赋值为Nil