Worker本身的实现确实是繁琐的,尤其是 postMessage、onmessage这类线程间数据通信操作,就挺繁琐。
这个时候可以用谷歌的comlink库: comlink - npm comlink能用单线程操作的习惯来实现多线程操作,很赞。
(其原理是Proxy代理机制) 当然Vite也有适配: vite-plugin-comlink - npm 然后,解决完线程间通讯的麻烦事之后,还要面对一个坑。
就是Worker和Worker之间、Worker和主线程之间,无法实现复杂数据类型的传输(会丢类型)。
…。
{dede:pagebreak/}
程序中提升几毫秒、节省几 kB 的内存有必要吗?
如何评价《一人之下》第722(765)话情报?
不是都说6月美债要爆吗 怎么没消息了?
vue + tsx 的开发体验能追得上 react+tsx么?
公司规定所有接口都用 post 请求,这是为什么?
为什么个人需要公网ip?
为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?
Web 前端怎样入门?
既然电脑不能插四条内存,为什么要设计四个插槽?
大家都喜欢用什么浏览器?
你手机中最舍不得卸载的APP是什么?
编译器和解释器的分界线在哪,字节码效率能否无限接近机器码?
程序员看剧的时候,如果看到有敲代码页面,会暂停看代码吗?
你认为 PC 上最好用的 PDF 阅读器是哪一种?
个子高是种怎样的体验?
为什么成功人士的精力都非常旺盛?