Qt快速使用内存

  • 本文关键字:内存 Qt qml qt-quick
  • 更新时间 :
  • 英文 :


在处理一个中等大小的Qt项目时,我们注意到,当屏幕上没有太多内容时,内存消耗会高得惊人。我试图找到某种memleak,这让我找到了CREATE_QML_OBJECT宏,其中创建了QML实例对象。在从加载的qml文件中删除所有自定义ui元素并只留下四个基本元素后,我得到了

Rectangle {
    Button {}
    CheckBox {}
    Slider {}
    TextField {}
}

这个东西大约消耗1-1.5 MB。

我看过QtQuick的演示项目,它在那里是一样的:

Gallery演示。只是一堆控件,启动时为100MB。

同样的游戏演示。简单的游戏,玩了5分钟256MB就没了。

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

任何帮助都将不胜感激。


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

QML内存消耗大?

QML应用程序的内存占用

性能注意事项和建议

全部由javascript垃圾收集器管理。很少有东西可以尝试:

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

2) 在Loader上加载项目。这样,它们就不应该在不使用的时候留在记忆中。

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

相关内容

  • 没有找到相关文章

最新更新