Volatile和Synchronized对可见性和原子性的支持

在学习并发编程的时候,遇见了volatile和synchronized关键字问题,volatile是可以保证可见性,但无法保证原子性,synchronized关键字由于其是加锁机制,肯定是可以保证原子性的。但是它能保证可见性吗?也就是说被synchronized包裹的变量的值被修改后会立即送往主内存中吗?带着这个问题,我们继续往下看。

结论:volatile关键字只是用来修饰变量,并且保证变量的可见性;synchronized关键字只是用来修饰方法和代码块,并且保证里面的所有操作是原子性和可见性的。

详细内容请参看(写的真好):
volatile和synchronized的区别与联系

Java并发编程:volatile关键字解析。以及volatile和synchronize的区别

原文地址:https://www.cnblogs.com/loren-Yang/p/7466125.html