クラス SimplePool<T>

java.lang.ObjectSE
org.springframework.integration.util.SimplePool<T>
型パラメーター:
T - プール要素型。
実装されているすべてのインターフェース:
Pool<T>

public class SimplePool<T> extends ObjectSE implements Pool<T>
動的サイズ変更をサポートする Pool の実装と、プールからアイテムを取得しようとするときの可変タイムアウト。プールは、上限までオンデマンドで拡張されます。
導入:
2.2
作成者:
Gary Russell, Sergey Bogatyrev, Artem Bilan, Christian Tzolov
  • ネストされたクラスの要約

    ネストされたクラス
    修飾子と型
    クラス
    説明
    static interface
    プールのユーザーは、このインターフェースの実装を提供します。さまざまなプール操作中に呼び出されます。
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected final Log
  • コンストラクターの概要

    コンストラクター
    コンストラクター
    説明
    SimplePool(int poolSize, SimplePool.PoolItemCallback<T> callback)
    特定の制限で SimplePool を作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    プールを閉じます。return されたアイテムは破棄されます。
    int
    プールから現在チェックアウトされている割り当て済みアイテムの数を返します。
    int
    割り当てられたアイテムの現在の数(使用中およびアイドル中)を返します。
    int
    割り当てられているが現在使用されていないアイテムの数を返します。
    プールからアイテムを取得します。最大 waitTime ミリ秒 (デフォルトは無限大) 待機します。
    int
    プールの現在のサイズを返します。最近縮小され、使用中のアイテムが多すぎて新しいサイズを設定できない場合は、ターゲットプールサイズよりも大きくなる可能性があります。
    void
    アイテムをプールに戻します。
    void
    プールからすべてのアイドルアイテムを削除します。
    void
    setPoolSize(int poolSize)
    現在のプールサイズを調整します。
    void
    setWaitTimeout(long waitTimeout)
    待機タイムアウト(アイドル状態のエントリが利用できない場合に getItem() が待機する時間)を調整します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • logger

      protected final Log logger
  • コンストラクターの詳細

    • SimplePool

      public SimplePool(int poolSize, SimplePool.PoolItemCallback<T> callback)
      特定の制限で SimplePool を作成します。
      パラメーター:
      poolSize - プールがサポートするアイテムの最大数。
      callback - さまざまなプール操作中に呼び出される SimplePool.PoolItemCallback 実装。
  • メソッドの詳細

    • setPoolSize

      public void setPoolSize(int poolSize)
      現在のプールサイズを調整します。プールサイズを減らすときは、プールからデルタを削除しようとします。プールに未使用のアイテムが十分にない場合、使用中のアイテムが返されるため、実際のプールサイズは指定されたサイズに減少します。
      パラメーター:
      poolSize - 目的のターゲットプールサイズ。
    • getPoolSize

      public int getPoolSize()
      プールの現在のサイズを返します。最近縮小され、使用中のアイテムが多すぎて新しいサイズを設定できない場合は、ターゲットプールサイズよりも大きくなる可能性があります。
      次で指定:
      インターフェース Pool<T>getPoolSize 
      戻り値:
      サイズ。
    • getIdleCount

      public int getIdleCount()
      インターフェースからコピーされた説明: Pool
      割り当てられているが現在使用されていないアイテムの数を返します。
      次で指定:
      インターフェース Pool<T>getIdleCount 
      戻り値:
      アイテムの数。
    • getActiveCount

      public int getActiveCount()
      インターフェースからコピーされた説明: Pool
      プールから現在チェックアウトされている割り当て済みアイテムの数を返します。
      次で指定:
      インターフェース Pool<T>getActiveCount 
      戻り値:
      アイテムの数。
    • getAllocatedCount

      public int getAllocatedCount()
      インターフェースからコピーされた説明: Pool
      割り当てられたアイテムの現在の数(使用中およびアイドル中)を返します。プールサイズよりも小さい場合があり、プール使用量の最高水準点を反映しています。
      次で指定:
      インターフェース Pool<T>getAllocatedCount 
      戻り値:
      アイテムの数。
    • setWaitTimeout

      public void setWaitTimeout(long waitTimeout)
      待機タイムアウト(アイドル状態のエントリが利用できない場合に getItem() が待機する時間)を調整します。
      デフォルト: 無限大。
      パラメーター:
      waitTimeout - ミリ秒単位の待機タイムアウト。
    • getItem

      public T getItem()
      プールからアイテムを取得します。最大 waitTime ミリ秒 (デフォルトは無限大) 待機します。
      次で指定:
      インターフェース Pool<T>getItem 
      戻り値:
      アイテム。
      例外:
      PoolItemNotAvailableException - 時間内に項目が入手できなくなった場合。
    • releaseItem

      public void releaseItem(T item)
      アイテムをプールに戻します。
      次で指定:
      インターフェース Pool<T>releaseItem 
      パラメーター:
      item - アイテム。
    • removeAllIdleItems

      public void removeAllIdleItems()
      インターフェースからコピーされた説明: Pool
      プールからすべてのアイドルアイテムを削除します。
      次で指定:
      インターフェース Pool<T>removeAllIdleItems 
    • close

      public void close()
      インターフェースからコピーされた説明: Pool
      プールを閉じます。return されたアイテムは破棄されます。
      次で指定:
      インターフェース Pool<T>close