Hasty Briefsbeta

双语

Concurrent JavaScript: It can work (2017)

4 hours ago
  • #WebKit
  • #JavaScript
  • #Concurrency
  • SharedArrayBuffer 支持 JavaScript 中的并发访问,实现了多线程编程的能力。
  • 一个稻草人 API 提案建议为 JavaScript 添加线程、锁、条件变量和线程局部变量,以实现完整的并发支持。
  • WebKit 的实现采用了分段蝴蝶结构以实现无等待操作,并通过转换线程局部性推断来最小化开销。
  • 性能目标包括非并发代码零性能倒退、线性可扩展性以及合理的内存模型语义。
  • 并发与 DOM 的交互通过限制对仅主线程可访问对象的访问来实现,同时允许对全局属性进行有限的并发访问。
  • 所提议的方案依赖于 64 位系统,并旨在使大多数属性访问的开销保持最小。