課程
/后端開發
/Java
/細說Java多線程之內存可見性
為什么兩個volatile變量在不變式中就會使得volatile線程不安全?
2017-02-08
源自:細說Java多線程之內存可見性 4-5
正在回答
volatile只能保證代碼的可見性,而不能保證代碼的原子性。所以,當代碼包含其他共享變量時,如果被其他線程執行,那么值就會發生改變。
舉報
用兩種方式實現內存可見性,代領大家深層次學習Java中的內存
3 回答共享變量和volatile變量區別
9 回答不是說volatile不保證原子性嗎?為什么對于64位類型的變量用volatile修飾?
1 回答加入有5個線程,某個變量在其中三個線程中有用到。這個變量算不算共享變量呢?
2 回答論靜態變量與 volatile和synchronized的區別
1 回答volatile 加不加線程都可以訪問啊,這是為什么?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-02-10
volatile只能保證代碼的可見性,而不能保證代碼的原子性。所以,當代碼包含其他共享變量時,如果被其他線程執行,那么值就會發生改變。