`title: SharedArrayBuffer 与并发数据处理``categories: Web 开发/前端/数据管理``keywords: SharedArrayBuffer,Atomics,Worker,并发,性能``description: 使用 SharedArrayBuffer 与 Atomics 在前端实现多线程并发数据处理,并在处理后将结果与元信息持久化管理。`基本并发模型function startWorker() {

const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024);

const view = new Int32Array(sab);

const w = new Worker('/worker.js');

w.postMessage({ sab });

Atomics.store(view, 0, 1);

Atomics.notify(view, 0, 1);

}

Worker 侧self.onmessage = e => {

const view = new Int32Array(e.data.sab);

const v = Atomics.load(view, 0);

Atomics.store(view, 1, v + 1);

Atomics.notify(view, 1, 1);

};

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部