Worker本身的实现确实是繁琐的,尤其是 postMessage、onmessage这类线程间数据通信操作,就挺繁琐。
这个时候可以用谷歌的comlink库: comlink - npm comlink能用单线程操作的习惯来实现多线程操作,很赞。
(其原理是Proxy代理机制) 当然Vite也有适配: vite-plugin-comlink - npm 然后,解决完线程间通讯的麻烦事之后,还要面对一个坑。
就是Worker和Worker之间、Worker和主线程之间,无法实现复杂数据类型的传输(会丢类型)。
…。
{dede:pagebreak/}
为什么突破性的技术总是最先发生在西方?
为什么 mac mini 的 m4 版本价格这么低呢?
为什么现在吹Rust的人这么多?
为什么盗版音乐已经被严格限制了,而中国音乐却还是没有发展起来?
宁波东方理工大学学费每人每学年 9.6 万,为什么会这么贵?
我们常说的“地势险要、易守难攻”“兵家必争之地”到底是怎样的?
rust解决了什么问题?
为什么负荷那么大的腰部力量训练的人不会受伤,长期无载荷久坐的人会出现腰肌劳损?
人工智能相关专业里有什么「坑」吗?
公司老板不想续费3w一年的云服务器,合理吗?
江西救护车 800 公里收 2.8 万被停运,该***中还有哪些疑点?这个收费贵不贵?
Unity收费***后,为何大家选择了Godot而不是Cocos?
虚拟机装 Linux 我还能理解,装 Windows 有什么用?
有一双超级大长腿是什么感觉?
为什么 Bun 选择了 Zig 以及 JSCore?
如何判断鱼缸中的硝化系统是否已经成功建立?