新聞中心
ConditionHelper

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括科爾沁左翼網(wǎng)站建設(shè)、科爾沁左翼網(wǎng)站制作、科爾沁左翼網(wǎng)頁(yè)制作以及科爾沁左翼網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,科爾沁左翼網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到科爾沁左翼省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
java.lang.Object
|---ohos.utils.ConditionHelper
public class ConditionHelper
extends Object一個(gè)幫助類,用于使用 java.util.concurrent.locks 包中內(nèi)置的 Condition 類,而不處理 Lock 和 java.lang.InterruptedException 異常。
ConditionHelper 對(duì)象提供用于掛起線程(使其等待)或喚醒等待線程的接口。 它支持無(wú)限等待或定時(shí)等待。 線程在被喚醒或經(jīng)過指定的等待時(shí)間后才會(huì)退出等待狀態(tài)。
使用 ConditionHelper 類時(shí)要注意以下幾點(diǎn):
- 如果線程被喚醒后不重置喚醒狀態(tài),下次調(diào)用ConditionHelper#await或ConditionHelper#await(long awaitMs)方法時(shí)會(huì)立即返回執(zhí)行結(jié)果。
- ConditionHelper#await(long awaitMs) 方法不能確保精確計(jì)時(shí)。
- 如果在等待期間發(fā)生 java.lang.InterruptedException 異常,等待狀態(tài)不會(huì)終止。 線程被喚醒或等待時(shí)間過去后,可以使用 Thread.currentThread().isInterrupted() 來(lái)檢查線程是否被中斷。
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| ConditionHelper() | 用于創(chuàng)建具有默認(rèn)喚醒狀態(tài) false 的 ConditionHelper 實(shí)例的構(gòu)造函數(shù)。 |
| ConditionHelper(boolean isWakeup) | 用于創(chuàng)建具有指定喚醒狀態(tài)的 ConditionHelper 實(shí)例的構(gòu)造函數(shù)。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| void | await() | 掛起當(dāng)前線程,直到它被喚醒。 |
| boolean | await(long awaitMs) | 暫停當(dāng)前線程,直到它被喚醒或等待時(shí)間過去。 |
| void | resetCondition() | 將喚醒狀態(tài)重置為 false,然后您可以調(diào)用 await()。 |
| void | wakeup() | 喚醒當(dāng)前對(duì)象的線程并將其喚醒狀態(tài)設(shè)置為 true。 |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
構(gòu)造函數(shù)詳細(xì)信息
ConditionHelper
public ConditionHelper()
用于創(chuàng)建具有默認(rèn)喚醒狀態(tài) false 的 ConditionHelper 實(shí)例的構(gòu)造函數(shù)。
ConditionHelper
public ConditionHelper(boolean isWakeup)
用于創(chuàng)建具有指定喚醒狀態(tài)的 ConditionHelper 實(shí)例的構(gòu)造函數(shù)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| isWakeup | 指示要設(shè)置的喚醒狀態(tài)。 true表示線程被喚醒,false表示線程未被喚醒。 |
方法詳情
wakeup
public void wakeup()
喚醒當(dāng)前對(duì)象的線程并將其喚醒狀態(tài)設(shè)置為 true。
如果沒有調(diào)用resetCondition()重置喚醒狀態(tài),下次調(diào)用await()或await(long awaitMs)方法時(shí)會(huì)立即返回執(zhí)行結(jié)果。
resetCondition
public void resetCondition()
將喚醒狀態(tài)重置為 false,然后您可以調(diào)用 await()。
await
public void await()
掛起當(dāng)前線程,直到它被喚醒。
如果對(duì)象的喚醒狀態(tài)為 true,則立即返回該方法的執(zhí)行結(jié)果。
如果發(fā)生 java.lang.InterruptedException 異常,當(dāng)前線程繼續(xù)等待,直到被喚醒。 喚醒后,可以使用 Thread.currentThread().isInterrupted() 來(lái)檢查線程是否被中斷。
await
public boolean await(long awaitMs)
暫停當(dāng)前線程,直到它被喚醒或等待時(shí)間過去。
如果對(duì)象的喚醒狀態(tài)為 true,則立即返回該方法的執(zhí)行結(jié)果。
如果發(fā)生 java.lang.InterruptedException 異常,當(dāng)前線程繼續(xù)等待。 線程被喚醒或等待時(shí)間過去后,可以使用 Thread.currentThread().isInterrupted() 來(lái)檢查線程是否被中斷。
請(qǐng)注意,此方法無(wú)法確保精確的時(shí)序,因?yàn)樗褂孟到y(tǒng)時(shí)鐘。 如果系統(tǒng)時(shí)鐘發(fā)生變化,可能會(huì)影響時(shí)序精度。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| awaitMs | 表示等待時(shí)間,以毫秒為單位。 如果此參數(shù)設(shè)置為 0,則線程保持等待。 |
返回:
如果線程等待被喚醒,則返回 true; 如果線程一直等到等待時(shí)間過去,則返回 false。
網(wǎng)站名稱:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSConditionHelper
本文鏈接:http://fisionsoft.com.cn/article/dhhgdjj.html


咨詢
建站咨詢
