Java Volatile
2019-07-16 14:00 ljinch 阅读(81) 评论(0) 收藏 举报volatile具有可见性(所谓可见性,是指当一条线程修改了共享变量的值,新值对于其他线程来说是可以立即得知的)、有序性,不具备原子性。
当把变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序。volatile变量不会被缓存在寄存器或者对其他处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的值。
在访问volatile变量时不会执行加锁操作,因此也就不会使执行线程阻塞,因此volatile变量是一种比sychronized关键字更轻量级的同步机制。
浙公网安备 33010602011771号