Java JVM 4: JMM

来源:互联网 发布:sql表字段设置默认值 编辑:程序博客网 时间:2024/06/04 18:11

可见性
有序性
原子性

内存可见性
指令重排序:as-if-serial
synchronized:JMM规定线程工作内存的共享变量刷到主内存中,可保证原子性。
volatile关键字:可以保证线程之间状态信息的同步,保证数据的可见性和有序性,但不保证原子性。

无锁
CAS操作,硬件上很多CPU已经支持原子化的CAS指令。
这在juc包下的原子类中得到了充分的应用。

参考链接:
https://tech.meituan.com/java-memory-reordering.html
http://zqhxuyuan.github.io/2017/10/25/Java-Threads/
http://www.cnblogs.com/xrq730/p/7048693.html

原创粉丝点击