簡體   English   中英

wasm-bindgen,asm.js和Emcripten有什么區別?

[英]What are the differences between wasm-bindgen, asm.js and Emcripten?

我正在努力讓webpack使用一組使用wasm-bindgen編譯的WebAssembly文件

即使這只是webpack的一個問題 ,它讓我意識到我並沒有完全理解這些古怪的WebAssembly工具之間的差異。

使用wasm-bindgen和Emscripten編譯的WebAssembly模塊

這沒有意義。 您完全混合了所有內容,並且您鏈接的問題不應該應用於您的問題。 wasm-bindgen和Emscripten之間沒有關系。

首先, asm.js是在瀏覽器中運行C / C ++(或Rust)代碼的第一次嘗試,被認為是WebAssembly的前身。 它是JS的一個子集,可以編譯C / C ++代碼。 asm.js編譯的C / C ++代碼可以在任何瀏覽器中運行,因為它是JS,並且在許多瀏覽器中性能更高,因為它是JS的高度優化子集。 但是,asm.js 通常不如WebAssembly高性能。

對於其他人,簡而言之:

  • Emscripten是WebAssembly / asm.js的C / C ++編譯器工具鏈。
  • wasm-bindgen是一個Rust綁定器生成器,用於與JS代碼交互。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM