This will never happen! 即使從代碼正確性的角度來看,這兩者是相同的。注意到JVM仍然允許重排序前三條語句,只要他們位于volatile寫之前。 類似,JVM不會將位于volatile讀之后的代碼重排序到volatile讀之前。也就是說該代碼, 1 2 3 4 System.out.println("Flag is set to : " + hasValue); // volatile read...
www.dbjr.com.cn/article/1616...htm 2025-5-16