クラス ThreadLocalTargetSource

実装されているすべてのインターフェース:
SerializableSE, ThreadLocalTargetSourceStats, TargetClassAware, TargetSource, Aware, BeanFactoryAware, DisposableBean

public class ThreadLocalTargetSource extends AbstractPrototypeBasedTargetSource implements ThreadLocalTargetSourceStats, DisposableBean
オブジェクトプールの代替。この TargetSource は、すべてのスレッドが独自のターゲットのコピーを持つスレッドモデルを使用します。ターゲットの競合はありません。ターゲットオブジェクトの作成は、実行中のサーバー上で最小限に抑えられます。

アプリケーションコードは通常のプールに関して書かれています。呼び出し側は、異なるスレッドでの呼び出しで同じインスタンスを処理することを想定できません。ただし、たとえば、1 人の呼び出し元が AOP プロキシで繰り返し呼び出しを行う場合など、単一スレッドの操作中は状態を信頼できます。

スレッドバインドオブジェクトのクリーンアップは、BeanFactory 破棄時に実行され、使用可能な場合は DisposableBean.destroy() メソッドを呼び出します。アプリケーションが実際にシャットダウンするまで、多くのスレッドバインドオブジェクトが存在する可能性があることに注意してください。

作成者:
Rod Johnson, Juergen Hoeller, Rob Harrop
関連事項:
  • コンストラクターの詳細

    • ThreadLocalTargetSource

      public ThreadLocalTargetSource()
  • メソッドの詳細

    • getTarget

      public ObjectSE getTarget() throws BeansException
      抽象 getTarget() メソッドの実装。ThreadLocal に保持されているターゲットを探します。見つからない場合は、作成してスレッドにバインドします。同期は必要ありません。
      次で指定:
      インターフェース TargetSourcegetTarget 
      戻り値:
      ジョインポイントを含むターゲットオブジェクト、または実際のターゲットインスタンスがない場合は null 
      例外:
      BeansException
    • destroy

      public void destroy()
      必要に応じてターゲットを廃棄します。ThreadLocal をクリアします。
      次で指定:
      インターフェース DisposableBeandestroy 
      関連事項:
    • getInvocationCount

      public int getInvocationCount()
      インターフェースからコピーされた説明: ThreadLocalTargetSourceStats
      クライアント呼び出しの数を返します。
      次で指定:
      インターフェース ThreadLocalTargetSourceStatsgetInvocationCount 
    • getHitCount

      public int getHitCount()
      インターフェースからコピーされた説明: ThreadLocalTargetSourceStats
      スレッドバウンドオブジェクトによって満たされたヒットの数を返します。
      次で指定:
      インターフェース ThreadLocalTargetSourceStatsgetHitCount 
    • getObjectCount

      public int getObjectCount()
      インターフェースからコピーされた説明: ThreadLocalTargetSourceStats
      作成されたスレッドバインドオブジェクトの数を返します。
      次で指定:
      インターフェース ThreadLocalTargetSourceStatsgetObjectCount 
    • getStatsMixin

      public IntroductionAdvisor getStatsMixin()
      AOP プロキシを ThreadLocalInvokerStats にキャストできるようにする導入アドバイザー Mixin を返します。