問題タブ [wasm-bindgen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
402 参照

typescript - Rust WebAssembly カスタム要素のメモリ割り当て解除エラー

Rust で作成した最初の WASM で次のエラーが発生しました。デバッグの方法がわかりません。

コンテキスト: 最新の Chrome、Rust の wasm-bindgen コードが TypeScript カスタム要素から呼び出され、シャドウ DOM のキャンバス上で動作します。キャンバスにレンダリングされるデータは、HTML5 AudioBuffer から取得されます。すべての錆の変数はローカルにスコープされています。

ドキュメントに 1 つのインスタンスしか表示されない場合、Web コンポーネントは完全に機能しますが、さらにインスタンスを追加すると、上記のようにスタック トレースがダンプされます。コードは他の問題なく実行されます。

Chrome には未解決のメモリ バグがあることは知っています。

さびたコードは小さく、提供された HTMLCanvasElement に AudioBuffer の 2 つのチャネルをレンダリングするだけです。

機能をコメントアウトしようとしましたが、コードがキャンバスに触れていなくても上記を実行すると、エラーが発生します。以下の変更を行うと、単純な「out of wam memory」エラーが発生します。音声ファイルは 1,200k です。

編集:上記の正しいコードの後者のout of memoryエラーは本当に私を投げましたが、実際にはChromeのバグです。