タグ付けされた質問 「webassembly」

4
WebAssembly(Wasm)にコンパイルできる言語は何ですか?
WebAssembly(Wasm)にコンパイルできる言語は何ですか? 現在、C、C ++、およびRust(実験的)は、Java、Swift、C#などの言語が現在サポートされていないが、将来の開発の候補になる可能性があるllvmコンパイラバックエンドを使用して、WebAssemblyにコンパイルできると思います。 JavaScriptをWasmにコンパイルできるとは思いません。 https://github.com/WebAssembly/design/issues/219

3
asm.jsとWebAssemblyの違いは何ですか?
私は最近asm.jsとWebAssemblyについて読んでいます: http://ejohn.org/blog/asmjs-javascript-compile-target/ https://brendaneich.com/2015/06/from-asm-js-to-webassembly/ 私はまだいくつかのことについて混乱しています: asm.jsコードは時間内にコンパイルされて実行されますか?何にコンパイル? asm.jsがテキストでwasm(Webアセンブリ)がバイナリである以外に、2つの違いは何ですか? これは、ブラウザで実行されている他のスクリプト言語にとって何を意味しますか?Pythonを例にとると、それは wasmにコンパイルされたpythonコード?または wasmにコンパイルされてpythonを解釈するpythonインタープリター(Cpython)?

3
PythonをWebAssemblyにコンパイルする
Python 2.7コードをWeb Assemblyに変換できることを読みましたが、その方法に関する明確なガイドが見つかりません。 これまで、Emscriptenとそのすべての必要なコンポーネントを使用してCプログラムをWeb Assemblyにコンパイルしたので、それが機能していることがわかります(使用ガイド:http://webassembly.org/getting-started/developers-guide/) Ubuntuマシンでこれを行うために私が取らなければならないステップは何ですか?PythonコードをLLVMビットコードに変換してからEmscriptenを使用してコンパイルする必要がありますか?もしそうなら、私はこれをどのように達成しますか?


2
WebAssemblyでDOMにアクセスする
最近、一部のプロジェクトでWebAssemblyの使用を開始しました。WasmはjavaScriptより速いと聞いたので、これを行っています。 実際に最初のWasmプロジェクトを開始したとき、C ++でDOMを操作する方法がわからないことに気付きました。 Wasmを使用してこれを行う方法はありますか?

1
忘れてメモリリークを使用する代わりに、Rustを使用してWebAssemblyでクロージャを処理するより良い方法は何ですか?
Closuresを使用してJavaScriptにコールバックを提供するとき、それらを解放しないように対処するためのより良い方法は何ですか?wasm-bindgenガイドを使用して示唆し.forget、それは本質的にメモリをリークしていることを認めています。 通常は、後で適切なタイミングでドロップされるようにハンドルを格納しますが、今のところ、それをグローバルハンドラーにして、forgetメソッドを使用して、クロージャーを無効にすることなくそれをドロップします。これはRustでメモリリークを起こしているので注意してください。 これは、ドロップするのが適切になるまでクロージャーを保管することを示します。でalexcrichtonの答えに、前の質問に、彼は言及します... [...]一度しか呼び出されない場合は、[ Rc/] RefCellを使用しClosureて、クロージャー自体の内部をドロップできます(内部の可変性シェナンを使用します)。 しかし、彼はこの方法の例を提供していません。 閉鎖のマニュアルには、参照を解放するときに処理させるためにはJavaScriptコンテキストに閉鎖への参照を返す例を示します。 cbここにドロップすると、間隔が経過するたびに例外が発生します。代わりに、私たちは、返し JSが間隔をキャンセルし、閉鎖を解放する際に決めることができるように私たちのハンドルバックはJSに。 また#[wasm_bindgen]、この問題を回避するために、パブリック関数のライフタイムやマクロなどの機能を使用する方法もあると思いますが、その方法を理解するのに苦労しています。 私の質問は、.forgetRustからJavaScriptに返されるクロージャーを使用する代わりの選択肢は何ですか?また、使用中の各オプションの簡単な例をいくつか見ていただけますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.