你现在的位置是:当前位置: 首页 >


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

更新时间:2025-06-20 21:55:15

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

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

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

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

…。

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

案例推荐

case recommendation
  • 蜂鸟音乐指控邓紫棋侵权,要求 48 小时内下架重录歌曲,邓紫棋回应「不会下架」,这一指控合理吗?

    查看案例

  • 我应该设置多少kb才能让他不能玩游戏?

    查看案例

  • 为什么macOS软件生态不敌Windows?

    查看案例

  • 苹果为什么要给每代MacOS起个名字,真以为人们记得住分得清吗?

    查看案例

  • 黑客为什么可以做到无需知道源码的情况下找出系统漏洞?

    查看案例

  • 谁在半夜看过鱼缸里的鱼,它们都在干什么?

    查看案例

  • 慈禧为什么要反对戊戌变法?

    查看案例

  • 如何看待 Rust 的应用前景?

    查看案例