繁体   English   中英

JavaScript扩展和NPAPI插件之间的性能差异

[英]Difference between JavaScript Extensions and NPAPI plugins with respect to performance

我编写了一个无窗口的NPAPI插件,该插件绑定到用于访问本机资源的共享库。 该插件由运行在Firefox浏览器中的Web应用程序加载。 最近,我在网上看到,使用Java Script扩展,也可以进行本机代码函数调用。但是这些Java Script扩展特定于浏览器。

有人可以告诉我,如果我使用Java脚本扩展而不是NPAPI插件来调用本机代码,那么在进行本机库API调用的延迟方面是否会有任何性能改进?

请注意:我的查询是通用查询,并非专门针对Firefox浏览器。

对于这样的问题没有通用的答案,不同浏览器实现的机制没有共同点。

Firefox :可以通过js-ctypes调用本机库。 这种机制应该比与NPAPI插件的通信更轻巧。 更重要的是,您没有进程间通信的开销(较新的Firefox版本在单独的进程中运行插件)。

Chrome :AFAIK访问操作系统功能(例如将文件写入磁盘上的随机位置)的唯一方法是通过NPAPI,Chrome不允许扩展使用系统库。 但是,如果您仅使用本机库来加快执行速度,并且不介意在沙盒中运行此代码,则本机客户端可能会为您工作。 由于执行沙盒操作,它可能比NPAPI插件要慢,但在安装扩展程序时不会触发巨大的可怕警告。

Safari :据我所知,Safari不允许您使用本机库, 甚至不通过NPAPI插件

Internet Explorer :从MSIE 9.0开始,Internet Explorer仍然没有类似于基于JavaScript的扩展的任何内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM