参考之后 随意写写,让自己理解下
共享变量由volatile修饰,可以保证变量在各个线程的可见性(在执行查询变量值之前会同步缓存和内存,虽然不是原子性操作,但是根据java内存模型happen before原则,使volatile字段的写入优先于读取操作,保证数据不会脏读),volatile为了保证变量的在各个线程的可见性,会禁止程序执行结果的重新排序(导致缓存优化效率降低)
参考之后 随意写写,让自己理解下
共享变量由volatile修饰,可以保证变量在各个线程的可见性(在执行查询变量值之前会同步缓存和内存,虽然不是原子性操作,但是根据java内存模型happen before原则,使volatile字段的写入优先于读取操作,保证数据不会脏读),volatile为了保证变量的在各个线程的可见性,会禁止程序执行结果的重新排序(导致缓存优化效率降低)