我的一个交互式图形显示程序,运行后,每显示一次,可用内存就会减少10k左右,如何查错?说明:
0. 这是一个用BP7实模式编写的Pascal程序,
1. 程序启动时测试一次可用内存共为200多KB,
2. Open了某个File后,剩下100K,(这好理解),
3. 以后每显示一次,可用内存就会减少约10k,这样10次后可用内存就为0!
4. 我曾试图改为保护模式,但编译时就出现了其他不易解决的问题,暂且不论。

解决方案 »

  1.   

    每次调用完成后可以用free方法释放对象,这样就可以释放内容空间了
      

  2.   

    申请了内存记得要释放
    建立了对象记得要free
      

  3.   

    楼上两位,小弟觉得楼主不会犯free这样的错误吧。
    楼主,可以能控件本身就有问题。直接换高版本的IDE试试。
      

  4.   

    补充说明一点:
    上面所列可用内存数据都是程序在BP集成开发环境下运行测试的结果,
    如果程序独立运行,一开始可用内存有450KB,然后再显示一次减少10KB。
      
      

  5.   

    DOS的话打开文件了以后关闭没有呢?
    划分内存以后释放没有呢?
    DOS系统没有进程概念,也就没有进程退了会自动关闭文件和清理内存的机制.都是自己管理的.
      

  6.   

    找些工具,比如fastmm4,eurekalog之类的找一下