是否可以从另一个模块访问模块存储空间?

时间:2020-05-16 19:37:04

标签: javascript webassembly

有什么方法可以传递给wasm模块,另一个wasm模块的存储空间? 我读到动态链接可以共享内存空间,但是我没有找到任何解释该怎么做的信息。

https://webassembly.org/docs/dynamic-linking/

我也读过全局变量,但是似乎不可能将Unit32Array声明为全局变量。 (如果我错了,请纠正我)

不能使用副本。

谢谢!

1 个答案:

答案 0 :(得分:0)

是的,任何wasm模块都可以导入或导出其内存。如今,wasm模块仅支持单个内存,因此要共享内存,您可以在JavaScript中创建内存对象,并且必须将两个wasm模块都导入。或者让一个模块导出内存,而另一个模块导入内存。

在脚本中,这是实现动态链接的MAIN_MODULE / SIDE_MODULE版本的方式:https://github.com/emscripten-core/emscripten/wiki/Linking