线程同步:Condition
生活随笔
收集整理的這篇文章主要介紹了
线程同步:Condition
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用Synchronized關鍵字(synchronized方法或者synchronized代碼塊)來保證線程間同步,則系統中存在同步監視器(顯式或者隱式),可以使用wait()、notify()、notifyAll()來協調線程通信。
但是當我們直接使用Lock對象來保證同步的話,則系統中就不存在同步監視器一說。也就不能使用上述的幾個方法。
那怎么辦呢?
當使用Lock對象保證同步的話,JAVA提供了一個Condition的類來協調線程通信。這個Conditon對象必須要綁定到一個Lock對象上。
Lock lock = new ReentrantLock(); Condition cond = lock.newCondition();類似于Synchronized關鍵字提供的那些方法,Condition類也提供了一些方法來協調線程間通信。
await()
signal()
signalAll()
這三個方法的作用與之前的那三個方法類似。?
總結
以上是生活随笔為你收集整理的线程同步:Condition的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MYSQL:多表联合查询的例子
- 下一篇: 在当前PJ项目pj_nath模块加入my