2、Java并发机制的底层实现原理

来源:互联网 发布:linux搭建web邮件系统 编辑:程序博客网 时间:2024/06/18 17:29

后期再看。。

volatile
如果一个字段被声明成volatile,Java线程内存模型确保所有线程看到这个变量的值是一致的。

synchronized

Java SE 1.6为了减少获得锁和释放锁带来的性能消耗,引入了“偏向锁”和“轻量级锁”,在Java SE 1.6中,锁一共有4种状态,级别从低到高依次是:无锁状态、偏向锁状态、轻量级锁状态和重量级锁状态,这几个状态会随着竞争情况逐渐升级。锁可以升级但不能降级,意味着偏向锁升级成轻量级锁后不能降级成偏向锁。这种锁升级却不能降级的策略,目的是为了提高获得锁和释放锁的效率。

比较:
这里写图片描述

原子操作的原理

0 0