volatile的使用场景
2021-02-26 本文已影响0人
各种萌新
volatile的使用场景
使用volatile修饰的变量最好满足以下条件:
对变量的写操作不依赖于当前值
该变量没有包含在具有其他变量的不变式中
这里举几个比较经典的场景:
状态标记量,就是前面例子中的使用.
一次性安全发布.双重检查锁定问题(单例模式的双重检查).
独立观察.如果系统需要使用最后登录的人员的名字,这个场景就很适合.
开销较低的“读-写锁”策略.当读操作远远大于写操作,可以结合使用锁和volatile来提升性能