delphi – 我们什么时候使用Fastmm4有虚拟内存问题?
我们有一个虚拟内存上升并持续一天以上的应用程序.两天后,它已攀升至约500MB.
我已经尝试分析了命中数据库的应用程序以及大量的http和soap请求,但我Fastmm4显示没有泄漏. 我不确定如何或何时声称内存以及虚拟内存上升是否存在问题? JD 解决方法
它可能不是“泄漏”记忆,而是更“囤积”它.在应用程序无法释放内存之前,内存不会泄露.例如在它的指针丢失之后.
在创建对象时声明内存,并在对象被销毁时释放(或者如果对象被新对象覆盖则丢失).泄漏是指从未释放内存(应用程序关闭后). Memory Profiler可以显示当前在内存中的每个对象的数量以及Objects类(我们也使用AQ Time来执行此操作).您需要在一小时/ 2小时/ 3小时后查看内存配置文件.大多数长时间运行的应用程序(我所知道的)具有相当恒定(长期)的内存要求,并且内存中的每个对象也保持相当稳定.显然,应用程序繁忙时可能会出现峰值,但这些应该会恢复到稳定水平.看看是否有任何对象数量在不断增长. 我敢打赌,应用程序是动态创建一个表单或应用程序作为它的父级,在列表的末尾添加它,而不是释放它.对象位于内存中,直到应用程序关闭,但每个新对象需要更多内存. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |