volatile既然不能絕對保證線程安全?
保證你要的數據是那個時刻真實的數據。這個需要結合CPU緩存來說明,很多時候,你要的數據只是CPU緩存的數據,而內存中的數據已經發生變化了(特別是多核CPU的場景)。
它能保證訪問時數據的一致性,但不能保證你處理過程中數據的一致性。
volatile既然不能絕對保證線程安全?
保證你要的數據是那個時刻真實的數據。這個需要結合CPU緩存來說明,很多時候,你要的數據只是CPU緩存的數據,而內存中的數據已經發生變化了(特別是多核CPU的場景)。
它能保證訪問時數據的一致性,但不能保證你處理過程中數據的一致性。