在java中synchronized和volatile的区别是什么 java volatile和synchronized区别

主机教程 建站分享 2年前 (2022-12-20) 183次浏览

文章摘要:在java中synchronized和volatile的区别是什么 java volatile和synchronized区别

java中synchronized和volatile的区别: 1.volatile仅能使用在变量级别,而syn […]

java中synchronized和volatile的区别:

1.volatile仅能使用在变量级别,而synchronized则可以使用在变量、方法、和类级别的。

2.synchronized会线程阻塞,volatile不会造成线程阻塞。

3.synchronized保证了线程间的可见性、有序性和原子性,而volatile则无法保证原子性。

4.synchronized标记的变量可以被编译器优化,而volatile标记的变量不会被编译器优化。


声明:
若非注明,本站文章源于互联网收集整理和网友分享发布,如有侵权,请联系站长处理。
文章名称:在java中synchronized和volatile的区别是什么 java volatile和synchronized区别
文章链接:http://www.7966.org/post/13053.html
转载请注明出处

喜欢 (0)