ReentranLockと利用状況分析

まず、定義

  ロックReentantLockインターフェイスの継承は、彼がリエントラントロック(ある * )、行われるすべての作業に加えて、同期させることができ、また、このようなとして提供 ロック割り込み応答では ロック要求ポーリングすることができる タイムロック 、マルチスレッドを避け、メソッドのデッドロック。
第二に、メインインターフェイス
  1. ボイドロック():ロックがアイドル状態にある場合、現在のスレッドがロックを獲得するために、ロックが別のスレッドによって保持されている場合はそうでなければ、現在のスレッドがロックを獲得するために、現在のスレッドまで(遮断状態)無効になり
  2. ブールのtryLock():ロックが利用可能である場合は、すぐにロックを取得し、真を返すように、そうでない場合はfalseを
  3. 空lockInterruptibly()例外:InterruptedExceptionを投げる:ロック()メソッドと一致しますが、スレッドが中断され、それは例外例外:InterruptedExceptionがスローされます
  4. ボイドロック解除():現在のスレッドが保持されたロックを解放し、スレッドがロックを保持していない場合、このメソッドの実装は、異常発生につながる可能性
  5. ブールisLocked():スレッドがあります
  6. ReentrantLockの():デフォルトでは、不公平ロック
  7. ReentrantLockの(ブールフェア):フェア、構成ロック/非ロックフェア(偽:不当なロック;真:フェアロック)
  8. 条件newCondition():オブジェクト条件、アクセス通知コンポーネント待つ(成分を、現在のバインディングをロック)します
    • 空のawait()例外:InterruptedExceptionを投げる:同値クラスObject()メソッドを待ちます
    • ボイド信号():オブジェクト・クラス相当通知()メソッド
    • 空signalAll():Objectクラスと同等のnotifyAll()メソッド

 

おすすめ

転載: www.cnblogs.com/pascall/p/11121428.html
おすすめ