javascript - 使用 JavaScript Web Workers 的并行编程/同步

标签 javascript synchronization web-worker

是否有任何同步原语,如障碍信号量监视器,... 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/

相关文章:

javascript - JavaScript 是面向对象的吗?

java - 如何应用同步?

c - 单链表插入同步

javascript - 如何在 worker 中处理三个网眼对象

javascript - Knockout.js:没有 jQuery UI 的折叠/折叠元素

SCSS 中的 Javascript 表达式

multithreading - 自同步 Goroutines 以死锁告终

javascript - Webworker回调后返回结果

javascript - Uncaught ReferenceError : Worker is not defined while trying to create a Worker within another Worker in Chrome

javascript - retinajs 插件问题