Qt快速内存使用

vim*_*vim 7 qml qt-quick

在我们注意到的中型Qt项目上工作时,如果屏幕上没有太多内存,那么内存消耗会非常高.我试图找到某种memleak导致我进入CREATE_QML_OBJECT宏,其中创建了qml实例对象.从加载的qml文件中删除所有自定义ui元素后,只留下我得到的四个基本元素

Rectangle {
    Button {}
    CheckBox {}
    Slider {}
    TextField {}
}
Run Code Online (Sandbox Code Playgroud)

而这个东西消耗大约~1-1.5 MB.

我已经看过QtQuick演示项目,那里有同样的事情:

图库演示.只是一堆控件,启动时100 MB.

相同的游戏演示.简单的游戏,在玩了256分钟的5分钟后就消失了.

我很惊讶一个简单的QtQuick QML应用程序可以占用大量内存.有人知道是什么导致这种分配,有没有办法管理它?

任何帮助将不胜感激.


相关链接,还没有找到答案

QML大内存消耗?

QML应用程序的内存占用

绩效考虑和建议

Ama*_*man 3

它全部由 javascript 垃圾收集器管理。需要尝试的事情有:

1)gc()加载项目后立即调用,即打开Component.onCompleted:

2) 将物品装载到Loader上。这样,它们在不使用时就不应该留在内存中。

这些并不能保证减少内存占用,但可以有所帮助。