JavaTM 2 Platform
Standard Ed. 5.0

クラス
java.util.concurrent.TimeUnit の使用

TimeUnit を使用しているパッケージ
java.util.concurrent 通常、ユーティリティクラスは並行プログラミングで有用です。 
java.util.concurrent.locks 組み込みの同期および監視と区別された状態のロックおよび待機用のフレームワークを提供するインタフェースおよびクラス。 
 

java.util.concurrent での TimeUnit の使用
 

TimeUnit を返す java.util.concurrent のメソッド
static TimeUnit TimeUnit.valueOf(String name)
          指定した名前を持つこの型の列挙型定数を返します。
static TimeUnit[] TimeUnit.values()
          この列挙型の定数を含む配列を宣言されている順序で返します。
 

TimeUnit 型のパラメータを持つ java.util.concurrent のメソッド
 int CyclicBarrier.await(long timeout, TimeUnit unit)
          すべてのパーティがこのバリアで await を呼び出すまで待機します。
 boolean CountDownLatch.await(long timeout, TimeUnit unit)
          スレッドで割り込みが発生するか、指定された待機時間が経過しないかぎり、ラッチのカウントダウンがゼロになるまで現在のスレッドを待機させます。
 boolean ThreadPoolExecutor.awaitTermination(long timeout, TimeUnit unit)
           
 boolean ExecutorService.awaitTermination(long timeout, TimeUnit unit)
          シャットダウン要求後にすべてのタスクが実行を完了する、タイムアウトが発生する、現在のスレッドで割り込みが発生する、のどれかが最初に起きるまでブロックします。
 long TimeUnit.convert(long duration, TimeUnit unit)
          指定された単位で表される指定された期間を、この単位に変換します。
 V Exchanger.exchange(V x, long timeout, TimeUnit unit)
          割り込みが発生するか、指定された待機時間が経過しないかぎり、別のスレッドがこの交換ポイントに到達するまで待機し、指定されたオブジェクトをそのスレッドに転送して、代わりにオブジェクトを受け取ります。
 V FutureTask.get(long timeout, TimeUnit unit)
           
 V Future.get(long timeout, TimeUnit unit)
          必要に応じて、計算が完了するのを指定された時間まで待機します。
 long Delayed.getDelay(TimeUnit unit)
          このオブジェクトに関連付けられた残りの遅延時間を、指定された時間単位で返します。
 long ThreadPoolExecutor.getKeepAliveTime(TimeUnit unit)
          スレッドのキープアライブ時間を返します。
<T> List<Future<T>>
ExecutorService.invokeAll(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
          指定されたタスクを実行し、Future のリストをステータスとともに返し、すべてが完了するかまたは時間切れになるかのいずれか早い時点で結果を返します。
<T> List<Future<T>>
AbstractExecutorService.invokeAll(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
           
<T> T
ExecutorService.invokeAny(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
          指定されたタスクを実行し、タイムアウトになる前に正常に完了したタスクが存在する場合は、その結果を (例外をスローせずに) 返します。
<T> T
AbstractExecutorService.invokeAny(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
           
 boolean SynchronousQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこのキューに挿入します。
 boolean PriorityBlockingQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこの優先度キューに挿入します。
 boolean LinkedBlockingQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこのキューの末尾に挿入します。
 boolean DelayQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこの遅延キューに挿入します。
 boolean BlockingQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこのキューに挿入します。
 boolean ArrayBlockingQueue.offer(E o, long timeout, TimeUnit unit)
          指定された要素をこのキューの末尾に挿入します。
 E SynchronousQueue.poll(long timeout, TimeUnit unit)
          キューの先頭を取得して削除します。
 E PriorityBlockingQueue.poll(long timeout, TimeUnit unit)
           
 E LinkedBlockingQueue.poll(long timeout, TimeUnit unit)
           
 Future<V> ExecutorCompletionService.poll(long timeout, TimeUnit unit)
           
 E DelayQueue.poll(long timeout, TimeUnit unit)
          このキューの先頭を取得および削除します。
 Future<V> CompletionService.poll(long timeout, TimeUnit unit)
          次の完了済みタスクを表す Future を取得および削除します。
 E BlockingQueue.poll(long timeout, TimeUnit unit)
          このキューの先頭を取得および削除します。
 E ArrayBlockingQueue.poll(long timeout, TimeUnit unit)
           
<V> ScheduledFuture<V>
ScheduledThreadPoolExecutor.schedule(Callable<V> callable, long delay, TimeUnit unit)
           
<V> ScheduledFuture<V>
ScheduledExecutorService.schedule(Callable<V> callable, long delay, TimeUnit unit)
          指定された遅延後に有効になる ScheduledFuture を作成および実行します。
 ScheduledFuture<?> ScheduledThreadPoolExecutor.schedule(Runnable command, long delay, TimeUnit unit)
           
 ScheduledFuture<?> ScheduledExecutorService.schedule(Runnable command, long delay, TimeUnit unit)
          指定された遅延後に有効になる単発的なアクションを作成および実行します。
 ScheduledFuture<?> ScheduledThreadPoolExecutor.scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)
           
 ScheduledFuture<?> ScheduledExecutorService.scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)
          指定された初期遅延後に最初に有効になり、以降は指定された期間後に有効になる周期的なアクションを作成および実行します。
 ScheduledFuture<?> ScheduledThreadPoolExecutor.scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)
           
 ScheduledFuture<?> ScheduledExecutorService.scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)
          指定された初期遅延後に最初に有効になり、以降は実行終了から次の実行開始までの指定遅延後に有効になる周期的なアクションを作成および実行します。
 void ThreadPoolExecutor.setKeepAliveTime(long time, TimeUnit unit)
          スレッドが終了する前にアイドル状態にとどまる制限時間を設定します。
 boolean Semaphore.tryAcquire(int permits, long timeout, TimeUnit unit)
          指定された待機時間内に指定数のパーミットがすべて利用可能になり、現在のスレッドで割り込みが発生していない場合に、それらのパーミットをこのセマフォから取得します。
 boolean Semaphore.tryAcquire(long timeout, TimeUnit unit)
          指定された待機時間内にパーミットが利用可能になり、現在のスレッドで割り込みが発生していない場合に、このセマフォからパーミットを取得します。
 

TimeUnit 型のパラメータを持つ java.util.concurrent のコンストラクタ
ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue)
          指定された初期パラメータおよびデフォルトのスレッドファクトリおよびハンドラを使用して、新規 ThreadPoolExecutor を作成します。
ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, RejectedExecutionHandler handler)
          指定された初期パラメータを使用して、新しい ThreadPoolExecutor を作成します。
ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, ThreadFactory threadFactory)
          指定された初期パラメータを使用して、新しい ThreadPoolExecutor を作成します。
ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, ThreadFactory threadFactory, RejectedExecutionHandler handler)
          指定された初期パラメータを使用して、新しい ThreadPoolExecutor を作成します。
 

java.util.concurrent.locks での TimeUnit の使用
 

TimeUnit 型のパラメータを持つ java.util.concurrent.locks のメソッド
 boolean AbstractQueuedSynchronizer.ConditionObject.await(long time, TimeUnit unit)
          時間の指定された状態待機を実装します。
 boolean Condition.await(long time, TimeUnit unit)
          信号が送信される、割り込みが発生する、または指定された待機時間が経過するまで、現在のスレッドを待機させます。
 boolean Lock.tryLock(long time, TimeUnit unit)
          指定された待機時間内でロックが利用可能であり、現在のスレッドで割り込みが発生していない場合に、ロックを取得します。
 boolean ReentrantLock.tryLock(long timeout, TimeUnit unit)
          指定された待機時間内に別のスレッドがロックを保持せず、現在のスレッドで割り込みが発生していない場合に、ロックを取得します。
 boolean ReentrantReadWriteLock.ReadLock.tryLock(long timeout, TimeUnit unit)
          指定された待機時間内に別のスレッドが書き込みロックを保持せず、現在のスレッドで割り込みが発生していない場合に、読み込みロックを取得します。
 boolean ReentrantReadWriteLock.WriteLock.tryLock(long timeout, TimeUnit unit)
          指定された待機時間内に別のスレッドがロックを保持せず、現在のスレッドで割り込みが発生していない場合に、書き込みロックを取得します。
 


JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。