最近做了一个项目,出现内存不释放的问题,希望大家帮忙!我先说说现象!程序正常运行,线程什么的,该关闭也关闭了,但是内存只增不减,但是变态的地方出现了,如果我把窗体最大化一下,或者最小化一下,内存马上就释放掉,如果窗体不动,内存就不释放。原因分析不出来……还有,我为了弄明白问题,我新建一个项目,什么都不做,直接点运行。发现内存会吃到5M大,如果最小化一下,马上就变成了几百K,然后在最大化一下,发现内存最多占用1M大左右。当然,我知道我做的项目肯定有问题,但怎么解决呢?我看过很多东西,都释放掉了,怎么还站内存呢?非要窗体刷新下才没么?
十分不理解,请高手赐教!!!
十分不理解,请高手赐教!!!
有没有尝试用FASTMM来找一下泄露的语句
是D7!
窗体只要最大化或者最小化后,内存占有还原成正常的大小了啊!
这个应用程序存在内存泄露. 小内存块的泄露有 (不包括已按指针注册的预知泄露):5 - 12 字节: TIdThreadSafeInteger x 1
21 - 36 字节: TIdCriticalSection x 2这个是INDY 10自带的内存泄漏?不需要考虑的么??
如果只是窗体变化后,内存占用也变化,应该是正常的啊,这是windows的内存管理机制。
delphi下随便一个form都会占点内存的,如果不是内存一直持续不断的往上增的话,应该没什么问题
但是,一直使用下去,内存会吃到上百M大,这个时候,如果你最大化,最小化下,内存还能释放到几M大&&&&
如果是的话,你就别继续瞎猜了