volatile的使用场景

volatile的使用场景

使用volatile修饰的变量最好满足以下条件:

对变量的写操作不依赖于当前值

该变量没有包含在具有其他变量的不变式中


这里举几个比较经典的场景:

状态标记量,就是前面例子中的使用.

一次性安全发布.双重检查锁定问题(单例模式的双重检查).

独立观察.如果系统需要使用最后登录的人员的名字,这个场景就很适合.

开销较低的“读-写锁”策略.当读操作远远大于写操作,可以结合使用锁和volatile来提升性能

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • volatile关键字使用场景 Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 sync...
    史路比阅读 1,491评论 0 2
  • volatile生效的关键是缓存一致性协议,在修改变量的时候通知其他已读取缓存的线程此变量已经修改,触发其他线程对...
    willcoder阅读 304评论 0 1
  • 今天面试蘑菇街给了我深刻印象,学东西,不仅仅要看理论知识,而且要结合应用场景,今天被问了volatile的应用场景...
    莫冰先生阅读 5,788评论 2 5
  • volatile适用场景双重检查锁定(double-checked-locking)问题描述 转载自https:/...
    仙境源地阅读 220评论 0 0
  • 推荐指数: 6.0 书籍主旨关键词:特权、焦点、注意力、语言联想、情景联想 观点: 1.统计学现在叫数据分析,社会...
    Jenaral阅读 5,746评论 0 5