我有一个使用 QML 元素的简单 Qt 应用程序,一旦我启动应用程序,它需要大约 40Mb,现在我为单页创建动态对象。
例子。
var component = Qt.createComponent("AboutUs.qml");
var object = component.createObject(mainPage);
并在我使用 object.destroy() 关闭页面时销毁它们
应用程序的行为很奇怪:每当它创建一个简单的对象时,它需要大约 1Mb,但是当我删除该对象时,它们的内存不会被释放。
现在我的应用程序有 20 个这样的页面,所以如果我单次打开每个页面,应用程序占用的总内存大约是 60Mb,这就像内存泄漏。
我无法找出它发生的原因,是javascript引擎占用了内存而不释放它,还是java脚本局部变量没有释放内存,或者是QT4,它正在缓存以创建对象。