您当前的位置: 首页 > 

JS不能向WASM传递数组?

柳鲲鹏 发布时间:2021-06-04 15:25:51 ,浏览量:0

  自从把OFFICE编译为wasm之后,吾就想解决怎样传递数组的事情。结果在TeaVM问题列表中,看到这样一个内容:

https://github.com/konsoletyper/teavm/issues/379

There's no way to transfer arrays between JavaScript and WebAssembly. So there's no way to transfer array between TeaVM/WebAssembly and JavaScript. If you want to transfer complex data structures between Java and JavaScript, you should prefer JavaScript target. Currently, targetting to WebAssembly gives no benefits, either in performance or memory consumption.

没有办法在JS和Wasm之间传递数组。所以没有办法在TeaVM和JS之间传递数组。如果你想在Java和JS之间传递复杂数据结构的话, 你应该使用JS target。目前这样做没有好处,性能和内存都一样。

 is there a way to read & write from WebAssembly Memory(HEAP)

能否使用HEAP读写呢?

 

分析:

 为什么不能传递数组呢?道理也简单,JS的数组是包含多种内容,在内存中乱七八糟。wasm想访问传递进来的数组,必须通过JS接口才有可能(肯定要再套一层)。而Wasm中没有对应的结构。

以目前来看,wasm提供一个访问方法,应该是唯一可行的办法。说起来容易,怎么做呢?

关注
打赏
1688896170
查看更多评论

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4641博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0507s