为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?

2025-06-20 10:00:18

Worker本身的实现确实是繁琐的,尤其是 postMessage、onmessage这类线程间数据通信操作,就挺繁琐。

这个时候可以用谷歌的comlink库: comlink - npm comlink能用单线程操作的习惯来实现多线程操作,很赞。

(其原理是Proxy代理机制) 当然Vite也有适配: vite-plugin-comlink - npm 然后,解决完线程间通讯的麻烦事之后,还要面对一个坑。

就是Worker和Worker之间、Worker和主线程之间,无法实现复杂数据类型的传输(会丢类型)。

…。

为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?
广告位810*200
相关阅读
如何评价《塞尔达传说:王国之泪》?

如何评价《塞尔达传说:王国之泪》?

22年第一次玩王泪(没有玩旷野之息)惊为天人,孜孜不倦的玩了...

2025-06-21
为什么人们宁可用Lombok,也不把成员设为public?

为什么人们宁可用Lombok,也不把成员设为public?

因为大部分人内心的真实诉求就是写public,而且也是对的,...

2025-06-20
DF-41已经可以打击美国本土,这是否相当于古巴导弹危机常态化?

DF-41已经可以打击美国本土,这是否相当于古巴导弹危机常态化?

先说结论,不是 再说为啥 1.虽然东风41能覆盖米利坚,但是...

2025-06-20
为什么一部分 Go 布道师的博客不更新了?

为什么一部分 Go 布道师的博客不更新了?

哈哈,首先我不是布道师,算是 go 语言的爱好者吧。 😄 自...

2025-06-20
为什么有人爱 Firefox 胜过 Chrome 呢?

为什么有人爱 Firefox 胜过 Chrome 呢?

你得问问为什么那么多 Linux 发行版,都把 FireFo...

2025-06-20