2011-10-13 89 views
0

提供互斥(即通过自旋锁机制)足以确保有效实施并发?或者我们是否也必须明确实施一些同步方法?Concurrecy:仅相互排斥?

总之:

并发的提供=有效的互斥实现并发

OR

规定=有效的互斥实现有效+同步实施

谢谢。

+0

有操作原子(互斥)和数据的可见性(易失性访问,存储器围栏,比较并交换,等等)之间的差。大多数高级语言围绕其“基本”同步锁提供了可视性保证。 – 2011-10-13 22:57:34

回答

0

您真正需要的(虽然其他的东西往往是出于性能的原因有帮助)是相互排斥和一些机制,以确保操作不能跨越互斥壁垒“移动”。

1

并发包括“互斥sycronization”的两个概念。并发是一种状态的表达。相互排斥是同时性状态的表达。相互排斥是一种技术,可以在并发中获得同步。