java中 volatile 关键字的作用、
① 避免编译器优化 比如 连续两句 a=1; a=2;编译器会优化为a=2
②避免指令乱序执行,创建对象过程 (①分配内存,半初始化②初始化③将变量指向内存,②③执行顺序不确定,在单例模式中需要注意)
③多线程中,线程直接从主存而非寄存器中读取数据
java中 volatile 关键字的作用、
① 避免编译器优化 比如 连续两句 a=1; a=2;编译器会优化为a=2
②避免指令乱序执行,创建对象过程 (①分配内存,半初始化②初始化③将变量指向内存,②③执行顺序不确定,在单例模式中需要注意)
③多线程中,线程直接从主存而非寄存器中读取数据