wasm
这篇文章是参加wasm中文社区的活动写的文章
结构
主要是
rust
js
中间层不需要我写,是[wasm_bindgen]生成
过程
比较懒,选择了最舒服的docker
一看手动配环境要ubuntu20维护版的库就不想搭了
-
docker运行
docker run -p 3000:3000 --rm -it -v $(pwd):/app ssvm-nodejs:v1 -
docker常用
docker run
docker ps
docker attach -
rust
写了个傅立叶级数计算圆周率pi的程序
输入x的总长度
计算到小数点后x-1位 -
js
前端只有一个button和一个div接收test输入 -
注意点
rust的绑定#[wasm_bindgen]
js注意require导入。。好远古
post ajax写一下
pi的计算要写大整数
ssvm_nodejs_starter_lib.js是模板库里的名字,可以改名字,我忘改了结果报依赖error -
附
坑
受 SE linux 影响
docker权限获取的时候遇到了坑
不过也是之前比较少用docker的关系
chcon -Rt svirt_sandbox_file_t /path/to/volume
或者直接特权容器
–privileged=true即可
漫谈
方便的话是方便的
不过很大程度上其实是方便了旧代码的迁移
新代码写的话到底怎样的需求会用这套框架呢
感觉人力投入大了
小公司烧不起啊
优势是啥
可以用rust直接写安全的并行?
编译之后难道不是web worker那套了吗?
希望有大佬知道的话也告诉我一声。
再编辑
csdn居然不让我创造webassembly的标签
说是我不到3级
也太过分了