第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

面試題:ReentrantLock和Atomic使用場(chǎng)景

面試題:ReentrantLock和Atomic使用場(chǎng)景

炎炎設(shè)計(jì) 2018-07-31 17:28:20
在面試的時(shí)候,面試官提出了讓比較ReentrantLock和Atomic兩者的適用場(chǎng)景,歡迎各路大神前來(lái)解答。
查看完整描述

2 回答

?
躍然一笑

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊

Atomic是指AtomicInteger吧?這種可以保證諸如在多線程下實(shí)現(xiàn)i++這樣的功能,這個(gè)應(yīng)該是用的最多的,因?yàn)閭鹘y(tǒng)的int類(lèi)型的i++并不是原子操作。

查看完整回答
反對(duì) 回復(fù) 2018-08-04
?
回首憶惘然

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊

你說(shuō)的Atomic是指Synchronized嗎,個(gè)人淺見(jiàn)是:

  1. Synchronized比ReentrantLock進(jìn)java標(biāo)準(zhǔn)早,因此一開(kāi)始大家都是用它。相當(dāng)于Java提供了一種封裝的互斥鎖機(jī)制,對(duì)于用戶來(lái)說(shuō),聲明成synchronized就可以拿到鎖的能力,而不用管具體是怎么加鎖解鎖的

  2. 使用簡(jiǎn)便也是雙刃劍,synchronized的粒度較粗,可控性較差。比如無(wú)法中斷一個(gè)正在等候獲得鎖的線程,也無(wú)法通過(guò)投票得到鎖等等。很多場(chǎng)景不是一個(gè)互斥鎖就能搞定的。

  3. 所以Java搞了個(gè)java.util.concurrent.locks.Lock的接口,并實(shí)現(xiàn)了各種類(lèi)型的鎖,其目的就是為了適應(yīng)各種不同場(chǎng)景下的鎖需求,ReenTrantLock就是其中的一種。

  4. ReenTrantLock也是一種互斥鎖,但它比Synchronized

    • 提供了更多功能,比如tryLock,拿不到鎖立即返回等

    • 可伸縮性更強(qiáng)??缮炜s性意味著在鎖競(jìng)爭(zhēng)的時(shí)候能夠在調(diào)度上少花時(shí)間,提高吞吐率,更高效利用CPU

    • 可編程性強(qiáng),它是一個(gè)鎖對(duì)象,可以在代碼里面?zhèn)鱽?lái)傳去,比較靈活

  5. 不過(guò)ReenTrantLock用起來(lái)肯定沒(méi)有Synchronized方便,要顯式解鎖,一旦忘了就麻煩了


查看完整回答
反對(duì) 回復(fù) 2018-08-04
  • 2 回答
  • 0 關(guān)注
  • 2109 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)