ReentrantLock.NewCondition 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
回傳一個 Condition 實例以供該 Lock 實例使用。
[Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")]
public virtual Java.Util.Concurrent.Locks.ICondition? NewCondition();
[<Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")>]
abstract member NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition
override this.NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition
傳回
條件物件
實作
- 屬性
備註
回傳一個 Condition 實例以供該 Lock 實例使用。
回傳Condition的實例在內建監視器鎖使用時,支援與監控方法Object相同的使用Object#wait() wait方式(, Object#notify notify, 和 Object#notifyAll notifyAll)。
<UL>
<li>如果在呼叫任何 ConditionCondition#await() 等待或 Condition#signal 訊號方法時,未保持此鎖,則會拋出 an IllegalMonitorStateException 鍵。
<當>呼叫條件 Condition#await() 等待方法時,鎖會被釋放,在它們返回前,會重新取得鎖並將鎖保持計數恢復到呼叫該方法時的狀態。
<li>如果執行緒在等待時被 Thread#interrupted 中斷,則等待會終止,會拋出 an InterruptedException 並清除該執行緒的中斷狀態。
<li>等待執行緒依 FIFO 順序進行訊號。
<li>從等待方法返回的執行緒的鎖重新取得順序與最初取得鎖的執行緒相同,預設情況下未指定,但對 <em>而言,公平</em> 鎖偏好等待時間最長的執行緒。
</ul>
Java 文件 java.util.concurrent.locks.ReentrantLock.newCondition()。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。