卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

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對(duì)象。Volatile是一個(gè)變量修飾符,synchronized是一個(gè)方法或塊修飾符。所以我們使用這兩個(gè)關(guān)鍵字來指定三種訪問變量的簡(jiǎn)單方法。因此,volatile只能在線程內(nèi)存和主存之間同步一個(gè)變量的值,而synchronized在線程內(nèi)存和主存之間同步所有變量的值,并通過鎖定和釋放偵聽器來實(shí)現(xiàn)。顯然,synchronized將比volatile消耗更多的性能。

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

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

synchronize怎么讀?

例如,您可以刪除它們或請(qǐng)求同步它們。