1.可见性(Visibility) 可见性是指,当一个线程修改了某一个全局共享变量的数值,其他线程是否能够知道这个修改. 显然,在串行程序来说可见性的问题是不存在的.因为你在任何一个地方操作修改了某个变量,那么在后续的程序里面,读取这个变量的数值,一定是修改后的数值. 但是,这个问题在并行程序里面就不见得了.在并行程序里面,如果一个线程修改了某一个全局变量,那么其他线程未必可以马上知道这个变动.下面的图1展示了可见性问题的一种.如果在CPU1和CPU2上各运行一个线程,他们共享变量t,由于编译器…