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

2025-06-29 12:00:12

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

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

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

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

…。

为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?
广告位810*200
相关阅读
如果发动机热效率达到100%,一升汽油大概可以让汽车行驶多少公里?

如果发动机热效率达到100%,一升汽油大概可以让汽车行驶多少公里?

大部分答主已经论证了,如果发动机热效率达到100%,一升汽油...

2025-06-18
以色列为什么突然敢打伊朗了?不怕被报复?

以色列为什么突然敢打伊朗了?不怕被报复?

以色列这种“让领导先走”的定点清除/斩首的战争打法,尽量不伤...

2025-06-18
有哪些值得推荐的小型 C 语言开源项目?

有哪些值得推荐的小型 C 语言开源项目?

STB项目地址: ***s://github***/noth...

2025-06-18
为什么鸿蒙PC要排斥Linux生态?

为什么鸿蒙PC要排斥Linux生态?

Linux生态和FreeDesktop生态不一样。 SEL...

2025-06-18
伊朗这次让以色列打惨了,这个国家还能挺过来吗?

伊朗这次让以色列打惨了,这个国家还能挺过来吗?

实际上,以色列要惨得多。 大家没法理解“体量”的意义。 ...

2025-06-18