“原子”和“同步”是否意味着相同或存在一些细微差别?
查看this question的答案,我认为我的问题的答案是肯定的,它们是同义词。以下是否正确?
答案 0 :(得分:10)
不太一样。 原子操作是不能细分为较小部分的操作。因此,在Java中,分配给int
是原子的:没有任何东西可以打断它,它可以完成也可以不完成。
同步操作是通过使用synchronized
关键字调用的某些编程机制模拟原子操作的操作。其实现可能会有所不同。因此,在同步块中,运行时系统会强制执行所谓的关键区域,其中只有一个控制线程可以同时传递。