是否有任何同步原语,如障碍、信号量、锁、监视器,... JavaScript/Web Workers 或者是否有一些可用的库使我能够使用这些东西(我正在考虑 Java 中的 java.util.concurrent 之类的东西)?
Worker 是否具有将它们与线程区分开来的晦涩属性(例如,它们可以与主线程共享内存)?是否有某种限制可以产生多少 worker (例如,出于安全原因或其他原因......)?我需要特别注意什么吗?
最佳答案
网络 worker 没有共享内存的概念;复制线程之间传递的所有消息。话虽如此,您没有屏障、信号量、锁和监视器,因为您在网络 worker 模型中不需要它们。
早在 2011 年 2 月就提出了共享内存的概念,但由于开发人员的复杂性,现在状态为 wontfix => https://lists.webkit.org/pipermail/webkit-unassigned/2011-February/287595.html
这里还有一个关于 web workers 的漂亮宣传。 http://blogs.msdn.com/b/ie/archive/2011/07/01/web-workers-in-ie10-background-javascript-makes-web-apps-faster.aspx
希望对你有帮助
关于javascript - 使用 JavaScript Web Workers 的并行编程/同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8333676/