首页 > 解决方案 > 如何在 webassembly 程序中执行回调?

问题描述

我正在研究方案到 javascript 编译器。我正在仔细研究以 webassembly (wasm) 为目标的想法。

我想要的是执行一个存在于 wasm 程序中的回调,特别是我不仅可以依赖 wasmimportsexports......但我可能错了。

到目前为止,我的实验都依赖于通过 emscripten 转换为 JavaScript 或 webassembly 的方案。

在 JavaScript 的情况下,DOM 事件可以绑定到方案过程,因为方案过程被转换为 JavaScript。

对于 emscripten,我创建了两个依赖于 requestAnimationFrame 的协作循环。一个生活在 JavaScript 中,另一个生活在 WebAssembly 中。WebAssembly 内部的循环依赖于 emscripten执行生命周期函数来按需暂停恢复wasm 程序。

我认为我的问题是如何实现emscripten_pause_main_loop()以及如何emscripten_resume_main_loop()实现以及最终 emscripten 采用什么执行策略来允许 JavaScript 使用一些参数恢复 wasm 执行。

提前致谢!

标签: schemeemscriptenwebassembly

解决方案


推荐阅读