Volatile修饰符告诉编译器,被volatile修饰的变量可以被程序的其他部分改变。其中一种情况涉及多线程编程。在一个多线程的程序里面,有时两个或多个线程共享同一个实例变量。从效率方面考虑,每一个线程可以保存这个实例中变量的私有的副本,所以变量的实际(或主要)备份在不同时间被更新,例如当进入synchronized方法时,需要反映他的当前状态。为了保证这一点,只要简单的指定变量volatile,他告诉编译器必须总是使用volatile变量的主备份(或者至少总是保持任何私有的备份和最新的主备份一样,反之亦然),同时,对主变量的访问必须同任何私有备份相同,精确的顺序执行。
Volatile修饰符
最新推荐文章于 2022-04-07 20:36:47 发布