Dev*_*Dev 1 delphi memory-leaks delphi-xe2
有一次,我必须使用Application.Terminate终止在Delphi XE2中开发的应用程序.
我想确认一下,由于这个会有任何记忆丧失吗?如果是的话,我需要处理的所有可能情况是什么?以及如何解决这些问题?
调用Application.Terminate方法不会产生内存泄漏这种方法相当于调用PostQuitMessage函数.资源未正确释放时会导致内存泄漏.要检查应用程序中是否存在内存泄漏,可以将全局变量设置ReportMemoryLeaksOnShutdown为true.
无论你如何关闭进程,都不会泄漏任何内存.当进程关闭时,OS会回收进程拥有的所有内存.
现在,Application.Terminate从Application对象开始导致有序关闭.拥有的所有对象Application都将被销毁.如果这些对象又拥有其他对象,则拥有的对象将被销毁.但是,就泄漏内存而言,进程无法终止并泄漏内存.进程可能终止并将某些资源置于不明确的状态,这就是为什么通常建议以有序的方式终止进程.
| 归档时间: |
|
| 查看次数: |
603 次 |
| 最近记录: |