volatile关键字
  volatile关键字是用于解决内存可见性问题: 多个线程操作共享数据时但对共享数据的操作彼此不可见,相同的问题也可以使用synchronized(){}同步锁来解决,但是同步锁本身的互斥性会导致效率低的问题,而volatile关键字相较于synchronized是更轻量级的。注:
1、volatile 不具备“互斥性”
2、volatile 不能保证变量的“原子性”
3、volatile直接操作主存数据。