簡體   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