1

官方文档说新的 Qt 5.8 版本:

在 Qt QML 和 Qt Quick 中发生了很多事情。QML 引擎支持在磁盘上缓存 QML 和 JS 文件的二进制表示,从而减少引擎的启动时间和内存消耗。

但似乎启动时间和内存消耗都没有得到改善,而且它变得更慢并且正在使用更多的 RAM。

我提供了一些测试。创建了一个新的空白项目,启动task manager,我看到的是:

内存使用情况:

Qt 5.8 18.8 MB

Qt 5.7 14.2 mb

启动时间:

StackView当我将新项目推入通孔时大约一秒钟的差异URL

那么他们改进了什么?

4

1 回答 1

0

.qml/.js 文件中的 Cashed 代码和数据结构将在第一次启动时生成。生成的 .qmlc 和 .jsc 缓存文件将用于进一步启动,因此您的应用程序第一次启动时不会看到任何差异。

我的主要项目有超过 20k 行代码

这也取决于你的 qml 代码是如何排列的以及你的 qml 文件有多大,你需要在启动时尽量减少创建 qml 对象,将你的 qml 文件划分为逻辑单元并尽可能使用 Loader。

于 2017-02-21T08:11:30.087 回答