クラス ThreadLocalTargetSource
java.lang.ObjectSE
org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource
org.springframework.aop.target.AbstractPrototypeBasedTargetSource
org.springframework.aop.target.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
- 関連事項:
フィールドサマリー
クラス org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource から継承されたフィールド
logger
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明void
destroy()
必要に応じてターゲットを廃棄します。ThreadLocal をクリアします。int
スレッドバウンドオブジェクトによって満たされたヒットの数を返します。int
クライアント呼び出しの数を返します。int
作成されたスレッドバインドオブジェクトの数を返します。AOP プロキシを ThreadLocalInvokerStats にキャストできるようにする導入アドバイザー Mixin を返します。抽象 getTarget() メソッドの実装。クラス org.springframework.aop.target.AbstractPrototypeBasedTargetSource から継承されたメソッド
destroyPrototypeInstance, newPrototypeInstance, setBeanFactory, writeReplace
クラス org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource から継承されたメソッド
copyFrom, equals, getBeanFactory, getTargetBeanName, getTargetClass, hashCode, isStatic, releaseTarget, setTargetBeanName, setTargetClass, toString
コンストラクターの詳細
ThreadLocalTargetSource
public ThreadLocalTargetSource()
メソッドの詳細
getTarget
抽象 getTarget() メソッドの実装。ThreadLocal に保持されているターゲットを探します。見つからない場合は、作成してスレッドにバインドします。同期は必要ありません。- 次で指定:
- インターフェース
TargetSource
のgetTarget
- 戻り値:
- ジョインポイントを含むターゲットオブジェクト、または実際のターゲットインスタンスがない場合は
null
- 例外:
BeansException
destroy
public void destroy()必要に応じてターゲットを廃棄します。ThreadLocal をクリアします。getInvocationCount
public int getInvocationCount()インターフェースからコピーされた説明:ThreadLocalTargetSourceStats
クライアント呼び出しの数を返します。- 次で指定:
- インターフェース
ThreadLocalTargetSourceStats
のgetInvocationCount
getHitCount
public int getHitCount()インターフェースからコピーされた説明:ThreadLocalTargetSourceStats
スレッドバウンドオブジェクトによって満たされたヒットの数を返します。- 次で指定:
- インターフェース
ThreadLocalTargetSourceStats
のgetHitCount
getObjectCount
public int getObjectCount()インターフェースからコピーされた説明:ThreadLocalTargetSourceStats
作成されたスレッドバインドオブジェクトの数を返します。- 次で指定:
- インターフェース
ThreadLocalTargetSourceStats
のgetObjectCount
getStatsMixin
AOP プロキシを ThreadLocalInvokerStats にキャストできるようにする導入アドバイザー Mixin を返します。