今日面试题总结————并发篇
请解释一下volatile关键字?
volatile是Java中的轻量级的同步机制,总共有三个特性:可见性、非原子性、有序性(也叫禁止重排)
可见性:在Java内存模型中(JMM),多个线程访问主内存中的变量,将变量拷贝到自己的工作内存中。当然线程对变量的操作也算是对副本的操作,当其中一个线程改变了副本就会将改变后副本值更新到主内存中去,加了volatile后其他线程也能知道主内存中数据发生改变,从而自身副本也重新拷贝,反之不不知道已经改变。
非原子性:原子性就是不可分割,该做就一直做。在多线程环境下
原创
2020-09-01 20:41:16 ·
83 阅读 ·
0 评论