它使用 RPC 协议使工作线程中的对象看起来可以从主线程访问,反之亦然。当使用 Comlink 时,您不应该在任何方面处理 postMessage 。最大的麻烦是,由于 postMessage 的异步特性,该特性不再返回其最终结果,而是返回其结果。在我看来,这为您提供了高质量的 Actor 模型和共享内存并发性。如何使用 Comlink 的示例取自 Comlink 的自述报告。 Comlink 包装了一个工作线程,让您可以访问未覆盖的值。 (大预览)Comlink 并不总是那么神奇,它仍然使用 postMessage 作为 RPC 协议。如果您的实用程序最终遇到 postMessage 成为瓶颈的罕见情况之一,那么了解 ArrayBuffers 可以被传输是很有用的。 转让几乎是当场进行包括控球权 发送 JavaScript 范围将失去访问系统内信息的权限。当我想在主线程之外运行 WebVR 软件的物理模拟时,我使用了这个技巧。并发版本 2 共享内存 正如我上面提到的,传统的线程方法完全基于共享内存。这种方法在 JavaScript 中并不总是可行,因为几乎所有 API 都是在没有对对象的并发访问的理念下构建的。现在更改它要么会破坏社区,要么会因为现 加拿大手机数据库 需要同步而导致大量的整体性能成本。相反,共享内存的概念仅限于专用类型 SharedArrayBuffer (或简称 SAB ) SAB 与 ArrayBuffer 非常相似,是一个线性内存块,可以使用类型化数组或 […]