日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

简单说说你对Java内存模型的原子性的了解吧?

發(fā)布時間:2025/3/18 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简单说说你对Java内存模型的原子性的了解吧? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??

? ? Java內(nèi)存模型保證non-long、non-double類型外的其他任意類型的訪問都是原子性的。同時volatile long、volatile double訪問也是原子性的。

?

參考資料:

同步和Java內(nèi)存模型 (二)原子性

除了long型字段和double型字段外,java內(nèi)存模型確保訪問任意類型字段所對應(yīng)的內(nèi)存單元都是原子的。這包括引用其它對象的引用類型的字段。此外,volatile long 和volatile double也具有原子性 。(雖然java內(nèi)存模型不保證non-volatile long 和 non-volatile double的原子性,當(dāng)然它們在某些場合也具有原子性。)(譯注:non-volatile long在64位JVM,OS,CPU下具有原子性)

當(dāng)在一個表達(dá)式中使用一個non-long或者non-double型字段時,原子性可以確保你將獲得這個字段的初始值或者某個線程對這個字段寫入之后的值;但不會是兩個或更多線程在同一時間對這個字段寫入之后產(chǎn)生混亂的結(jié)果值(即原子性可以確保,獲取到的結(jié)果值所對應(yīng)的所有bit位,全部都是由單個線程寫入的)。但是,如下面(譯注:指可見性章節(jié))將要看到的,原子性不能確保你獲得的是任意線程寫入之后的最新值。 因此,原子性保證通常對并發(fā)程序設(shè)計的影響很小。

轉(zhuǎn)載于:https://my.oschina.net/u/914290/blog/803287

總結(jié)

以上是生活随笔為你收集整理的简单说说你对Java内存模型的原子性的了解吧?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。