国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

synchronized詳解 synchronized怎么讀?

synchronized怎么讀?volatile與synchronized的區(qū)別與聯(lián)系:在Java中,為了保證多線程讀寫數(shù)據(jù)時(shí)數(shù)據(jù)的一致性,可以采用兩種方式:使用volatile關(guān)鍵字:在一句話中泛化

synchronized怎么讀?

volatile與synchronized的區(qū)別與聯(lián)系:

在Java中,為了保證多線程讀寫數(shù)據(jù)時(shí)數(shù)據(jù)的一致性,可以采用兩種方式:使用volatile關(guān)鍵字:在一句話中泛化volatile,當(dāng)變量值發(fā)生變化時(shí),可以讓其他線程盡快知道。例如,使用synchronized關(guān)鍵字表示或使用lock對象。Volatile是一個(gè)變量修飾符,synchronized是一個(gè)方法或塊修飾符。所以我們使用這兩個(gè)關(guān)鍵字來指定三種訪問變量的簡單方法。因此,volatile只能在線程內(nèi)存和主存之間同步一個(gè)變量的值,而synchronized在線程內(nèi)存和主存之間同步所有變量的值,并通過鎖定和釋放偵聽器來實(shí)現(xiàn)。顯然,synchronized將比volatile消耗更多的性能。

volatile的本質(zhì)是告訴JVM寄存器中當(dāng)前變量的值是不確定的,需要從主存中讀取。Synchronized是鎖定當(dāng)前變量。只有當(dāng)前線程可以訪問變量,其他線程被阻止。

Volatile只能在可變級別使用,而synchronized可以在可變級別和方法級別使用。Volatile只能實(shí)現(xiàn)變量的修改可見性,但它不具有原子屬性。Volatile不會(huì)導(dǎo)致線程阻塞,而synchronized可能會(huì)導(dǎo)致線程阻塞。用volatile標(biāo)記的變量不由編譯器優(yōu)化,而用synchronized標(biāo)記的變量可以由編譯器優(yōu)化。

synchronize怎么讀?

例如,您可以刪除它們或請求同步它們。