c++的QT和nodejs在qt 跨平台台方面哪个更好 更有前途

问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
目前有个项目是用C++和Qt开发的,现在遇到个问题就是解析html。比如我要像jquery那样,获取id="test"的div的html内容。在c++里面,这件事做得太憋屈了。我查了一下,只有谷歌的一个开源工具gumbo是解析html的,但是功能似乎没那么强大,折腾很久都不行。
我后来查了一圈发现,最了解html的,当然是js了。他们好像是亲兄弟一样。
在js里面使用jquery完成上面的功能只需要一行代码
$("div#test").html()
啊,多么完美简洁的一句话。
可是在c++的世界里面太难想象了。
所以我现在非常想用js来解决我的问题。可以有很多丰富的开源项目来支持。但是我的项目c++和Qt怎么用上这些js或者nodejs来解决问题呢?
有什么办法呢?查了一圈,好像说用nw.js和Electron,听说坑还真不少,毕竟出来也没多久。放弃目前的体系跳到这两个,要是不行再跳回来,估计时间都过去个把月了,得不偿失,风险太大
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
试试PhantomJS,内存浏览器,不要打开界面,性能应该还可以
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
Electron吧,是Github官方推的,而且已经有不少成熟实例。
对QT与C++,不懂。。。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
对Qt不熟,如果Qt原生的webview组件可行,应该是开发和执行上最高效的方案。
其次,还可以写个node脚本读html 加载jQuery/zepto抓标签文字 然后通过进程间通信传给Qt下的C++进程。要注意node可能不够webview来得轻量级,执行效率比C++低很多
但无论哪种方法,最后都会解析JS来抓取标签,这是用程序性能来换开发效率,记得测试看看性能是不是能够接受。
同步到新浪微博
分享到微博?
Hi,欢迎来到 SegmentFault 技术社区!⊙▽⊙ 在这里,你可以提出编程相关的疑惑,关注感兴趣的问题,对认可的回答投赞同票;大家会帮你解决编程的问题,和你探讨技术更新,为你的回答投上赞同票。
明天提醒我
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:Node.js性能初窥-计算性能(Qt/C++,Golang,Node.js)
- Go语言中文网 - Golang中文社区
<meta name="author" content="polaris ">
Node.js性能初窥-计算性能(Qt/C&#43;&#43;,Golang,Node.js)
· 4642 次点击 ·
开始浏览 & &
原文地址:http://blog.csdn.net/slug302/article/details/
大家都知道Node.js的单进程非阻塞模型适合于任务密集性(I/O)而不是计算密集型.那么到底有多不适合计算呢?下面做一个简单的测试.
测试硬件平台如下:
电脑型号 苹果 Macmini6,2 Lunch Box
操作系统 Windows 8 Enterprise 64位 ( DirectX 11 )
英特尔 第三代酷睿 i7-3615QM @ 2.30GHz 四核
16 GB ( 三星 DDR3 1600MHz )
APPLE HDD HTSE662 ( 1 TB )
Node.js 0.10.21
Qt5.2 beta1
Golang 1.2 R3
每一趟计算斐波那契8次.总共10趟(一共80次)计算总时间.
Node.js 不使用cluster模块.测试代码如下:
[javascript]
10次总时间132393ms
.....额有人会说有cluster模块可以以多个进程的方式处理,效率会提升.那我们来看看使用cluster之后的效果如何
[javascript]
10次总时间30322ms
下面是Qt(C++)中做同样的处理(多线程)
Debug编译10次总时间14279ms
Release编译10次总时间8280ms
还有一个单线程的也是做同样的计算,代码就不贴了只贴结果
Debug编译10次总时间64864ms
Release编译10次总时间37790ms
Golang单线程代码如下:
十次总时间73910ms.
Golang 使用8线程计算:
10次总时间14780ms
详细测试结果如下:
8线程Debug
8线程Release
单线程Debug
单线程Release
Golang单线程
Golang 8线程
看数据不太直观那看看下面的图吧......
我们可以看到在计算性能上C++ & Golang & Node.js.
C++单核和多线程效率都差不多是Golang一倍
Golang单核和多线程性能差不多是Node.js的一倍
写在最后:
本次并非全面的权威的测试,测试结果仅仅作为一方面的参考,并不能说明Node.js效率就是渣渣.而且Node.js我也是初学,代码也有可能有误.对于测试结果大家不要太过于介怀,仁者见仁智者见智.
回去了在我的24核服务器上再跑一次看看结果怎么样.
4642 次点击 &
请尽量让自己的回复能够对别人有帮助
支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
支持 @ 本站用户;支持表情(输入 : 提示),见
图片支持拖拽、截图粘贴等方式上传
记住登录状态
原文地址:http://blog.csdn.net/slug302/article/details/
大家都知道Node.js的单进程非阻塞模型适合于任务密集性(I/O)而不是计算密集型.那么到底有多不适合计算呢?下面做一个简单的测试.
测试硬件平台如下:
电脑型号 苹果 Macmini6,2 Lunch Box
操作系统 Windows 8 Enterprise 64位 ( DirectX 11 )
英特尔 第三代酷睿 i7-3615QM @ 2.30GHz 四核
16 GB ( 三星 DDR3 1600MHz )
APPLE HDD HTSE662 ( 1 TB )
Node.js 0.10.21
Qt5.2 beta1
Golang 1.2 R3
每一趟计算斐波那契8次.总共10趟(一共80次)计算总时间.
Node.js 不使用cluster模块.测试代码如下:
[javascript]
10次总时间132393ms
.....额有人会说有cluster模块可以以多个进程的方式处理,效率会提升.那我们来看看使用cluster之后的效果如何
[javascript]
10次总时间30322ms
下面是Qt(C++)中做同样的处理(多线程)
Debug编译10次总时间14279ms
Release编译10次总时间8280ms
还有一个单线程的也是做同样的计算,代码就不贴了只贴结果
Debug编译10次总时间64864ms
Release编译10次总时间37790ms
Golang单线程代码如下:
十次总时间73910ms.
Golang 使用8线程计算:
10次总时间14780ms
详细测试结果如下:
8线程Debug
8线程Release
单线程Debug
单线程Release
Golang单线程
Golang 8线程
看数据不太直观那看看下面的图吧......
我们可以看到在计算性能上C++ & Golang & Node.js.
C++单核和多线程效率都差不多是Golang一倍
Golang单核和多线程性能差不多是Node.js的一倍
写在最后:
本次并非全面的权威的测试,测试结果仅仅作为一方面的参考,并不能说明Node.js效率就是渣渣.而且Node.js我也是初学,代码也有可能有误.对于测试结果大家不要太过于介怀,仁者见仁智者见智.
回去了在我的24核服务器上再跑一次看看结果怎么样.
&最高记录 1364
&2012- Go语言中文网,中国 Golang 社区,致力于构建完善的 Golang 中文社区,Go语言爱好者的学习家园。
Powered by
&o&服务器由
赞助 &·&CDN 由
VERSION: V3.0.0&·&5.401116ms&·&为了更好的体验,本站推荐使用 Chrome 或 Firefox 浏览器
登录和大家一起探讨吧
记住登录状态
还不是会员

我要回帖

更多关于 qt跨平台开发 的文章

 

随机推荐