海詩(shī)網(wǎng) 知識(shí)百科 java(java入門零基礎(chǔ))

java(java入門零基礎(chǔ))

java, presentation

Condition只出現(xiàn)在java1.5中,主要用來(lái)代替?zhèn)鹘y(tǒng)的對(duì)象的wait()和notify()實(shí)現(xiàn)線程間的協(xié)作。與對(duì)象的wait()和notify()相比,

使用條件的await()和signal()來(lái)實(shí)現(xiàn)線程間的協(xié)作會(huì)更加安全高效。

所以一般建議使用Condition,阻塞隊(duì)列實(shí)際上是用Condition來(lái)模擬線程間的協(xié)作。

Condition實(shí)際上是一個(gè)接口,基本方法是await()和signal()。

條件依賴于鎖接口,生成條件的基本代碼,即lock.newCondition()。

如果要調(diào)用條件的await()和signal()方法,必須用lock保護(hù),也就是說(shuō)必須在lock.lock()和lock.unlock之間使用。

java入門零基礎(chǔ)

描述:

1. The wait () in the condition corresponds to the wait () of the target;

2. The signal () in the condition corresponds to the notify () of the target;

3. All signals in the condition () correspond to the notifyAll () of the target.

需要注意的是,條件的執(zhí)行方式是,在線程消費(fèi)者中調(diào)用await方法時(shí),線程消費(fèi)者會(huì)釋放鎖,自己休眠,等待被喚醒,線程生產(chǎn)者獲得鎖后,

它會(huì)開始運(yùn)行,運(yùn)行完畢后會(huì)調(diào)用條件的signalall方法喚醒線程消費(fèi)者,線程消費(fèi)者就可以恢復(fù)執(zhí)行了。

java,以上就是本文為您收集整理的java最新內(nèi)容,希望能幫到您!更多相關(guān)內(nèi)容歡迎關(guān)注。

本文來(lái)自網(wǎng)絡(luò),不代表海詩(shī)網(wǎng)立場(chǎng),轉(zhuǎn)載請(qǐng)注明出處:http://x91880.com/n/170063.html
      

java(java編程學(xué)習(xí)入門)

發(fā)表回復(fù)
聯(lián)系我們
聯(lián)系我們

在線咨詢: QQ交談

郵箱: 3587015498@qq.com

工作時(shí)間:周一至周五,9:00-17:30,節(jié)假日休息

關(guān)注微信
微信掃一掃關(guān)注我們
微信掃一掃關(guān)注我們
關(guān)注微博
返回頂部