没装最新的Qt 6.3,用的是Qt 5.15.2 64bit。简单测试了QJSEngine的性能。
递归计算第40项菲波纳次序列,执行10次,QJSEngine花了244秒,QuickJS花了235秒,
Chrome浏览器F12的Console花了17秒。
function fib(n) {
if (n <= 0)
return 0;
else if (n == 1)
return 1;
else
return fib(n - 1) + fib(n - 2);
}
var ts = 0;
for(let i = 0; i < 10; i++) {
var t = new Date().getTime();
fib(40);
t = new Date().getTime() - t;
ts += t;
}
ts;
【 在 hgoldfish 的大作中提到: 】
: Qt 6.3 重镑发布了新的 Qt Quick 编译器,号称性能至少有 30% 的提升,能够以接近 native 的速度运行 Qt Quick 程序。我觉得这是一个在工程上相当漂亮的技术,所以在此做了一个介绍。
: 实际上,Qt 的这个技术已经是第三次迭代了。可能很多人对 Qt Quick 并不了解,这里也顺便介绍一下。这个技术的主要目标是使用 JavaScript 开发 GUI,与 vue, reactjs, electron 这些技术不一样,它不依赖于浏览器环境,而是只使用了 JavaScript 语言,操纵 Qt 的控件。除了在
: 响应用户操作时,日常的渲染都由 C++, OpenGL 负责。 因此,相对于 vue/reactjs,Qt Quick 快很多。Qt 基于 JavaScript 发明了一个类似于 JSON 的文档格式,并称为 QML 语言。注意 Qt Quick 是指一整套 GUI 编程的方案,而 QML 是个基于 JavaScript 的语言。QML 语言是 Qt Qu
: ...................
--
FROM 119.233.176.*