volatile

volatile关键字

只能用来修饰变量,适用修饰可能被多线程同时访问的变量

相当于轻量级的 synchronized,volatitle 能保证有序性(禁用指令重排序)、可见性;后者不能保证原子性

变量位于主内存中,每个线程还有自己的工作内存,变量在自己线程的工作内存中有份拷贝,线程直接操作的是这个拷贝

被 volatile 修饰的变量改变后会立即同步到主内存,保持变量的可见性。

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