您的位置:首页 > 编程语言 > Java开发

java 内存模型基础总结

2015-03-24 00:47 232 查看
Java内存模型:如图1

线程通信:如图2

重排序:程序效率

happens-before:满足即不会重排序(可见性判断法则)

(只要你的程序中A HB B,那么B就能看到A的操作(无论A/B是否是同一个线程))

内存屏障指令:禁止重排序的实现

数据依赖性:单个线程中存在即不会重排(as-if-serial判断法则)

as-if-serial:保证重排对单个线程的结果无影响

数据竞争:正确同步则没有竞争且具有顺序一致性

顺序一致性:保证可见性和一致性

同步:包括对常用同步原语(lock,volatile和final)的正确使用



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  一致性 同步 内存 java