woolpack.utils.concurrent
クラス AcquirableChain

java.lang.Object
  上位を拡張 woolpack.utils.concurrent.AcquirableChain
すべての実装されたインタフェース:
Acquirable

public class AcquirableChain
extends java.lang.Object
implements Acquirable

コンストラクタ引数で指定されたAcquirableを順に Acquirable.acquire()するAcquirableAcquirable.acquire()による実行権の取得に失敗した場合、 既に実行権を取得したAcquirable を逆順にAcquirable.release()する。

作成者:
nakamura

コンストラクタの概要
AcquirableChain(Acquirable... acquirables)
          コンストラクタ。
 
メソッドの概要
 boolean acquire()
          実行権を取得する。
 java.util.List<Acquirable> getArray()
           
 void release()
          実行権を解放する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

AcquirableChain

public AcquirableChain(Acquirable... acquirables)
コンストラクタ。

パラメータ:
acquirables - Acquirableの配列。
例外:
java.lang.NullPointerException - 引数が null の場合。
メソッドの詳細

acquire

public boolean acquire()
インタフェース Acquirable の記述:
実行権を取得する。 実行権が取得可能でない場合に実行権を取得するまで処理をブロックするかは実装に依存する。 また内部でInterruptedExceptionが発生した場合に割り込み再設定 (Thread.interrupt())を指定するかは実装に依存する。

定義:
インタフェース Acquirable 内の acquire
戻り値:
実行権を取得できた場合は true。それ以外の場合は false。

release

public void release()
インタフェース Acquirable の記述:
実行権を解放する。 本メソッドを実行するスレッドが実行権を確保している必要があるかは実装に依存する。

定義:
インタフェース Acquirable 内の release

getArray

public java.util.List<Acquirable> getArray()


Copyright (C) 2006 Takahiro Nakamura. All rights reserved.