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

2025-06-28 11:30:11

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

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

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

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

…。

为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?
广告位810*200
相关阅读
如何判断鱼缸中的硝化系统是否已经成功建立?

如何判断鱼缸中的硝化系统是否已经成功建立?

从鱼缸里面物质转化角度来说一下哈。 首先,一个有生物的鱼缸...

2025-06-29
哪张照片让你觉得刘亦菲美得不可方物?

哪张照片让你觉得刘亦菲美得不可方物?

那自然是刘亦菲打枪图: 这颜值,这发量,这腰身,这曲...

2025-06-29
Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?

Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?

Go 即不要求 err 为 nil 时,result 是非 ...

2025-06-29
我听说Windows12微软就直接重头构建Windows了,就直接重构Win内核了,到底是不是真的?

我听说Windows12微软就直接重头构建Windows了,就直接重构Win内核了,到底是不是真的?

你太瞧不起NT Kernel了,这个内核无疑是有史以来最先进...

2025-06-29
Vue性能优于React,那为什么还不用Vue?

Vue性能优于React,那为什么还不用Vue?

我干了这么长时间、总结下为什么用和不用: 1:小部分老板是信...

2025-06-29