java - volatile关键字的使用误区?
PHP中文网
PHP中文网 2017-04-18 09:51:22
0
3
601

在tij中的volatile中有这么一句话:

当一个域依赖于它之前的值时(如自增), 那么volatile就无法工作了. 如果某个域的值受到其他域的值的限制, 那么volatile也无法工作, 例如Range类的lower和upper边界值必须遵循lower<=upper

这段话想要表达的意思是什么?

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(3)
刘奇

平たく言えば、揮発性としてマークされた値は予期せず変化する可能性があるため、キャッシュできず、毎回メインメモリから読み取る必要があります。
増加演算では、読み出し時と書き込み時でこの値が変化する可能性があり、正しい結果を書き込むことができません。
この値も制御不能に変化するため、不変条件が満たされない可能性があります。

いいねを押す +0
迷茫

volatile操作の原子性は保証できません

いいねを押す +0
洪涛

参照: Java の volatile キーワードの意味

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート