|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource org.springframework.aop.target.AbstractPrototypeBasedTargetSource org.springframework.aop.target.ThreadLocalTargetSource
public final class ThreadLocalTargetSource
Alternative to an object pool. This TargetSource uses a threading model in which every thread has its own copy of the target. There's no contention for targets. Target object creation is kept to a minimum on the running server.
Application code is written as to a normal pool; callers can't assume they will be dealing with the same instance in invocations in different threads. However, state can be relied on during the operations of a single thread: for example, if one caller makes repeated calls on the AOP proxy.
Cleanup of thread-bound objects is performed on BeanFactory destruction,
calling their DisposableBean.destroy()
method if available.
Be aware that many thread-bound objects can be around until the application
actually shuts down.
ThreadLocalTargetSourceStats
,
DisposableBean.destroy()
,
Serialized FormField Summary |
---|
Fields inherited from class org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource |
---|
logger |
Constructor Summary | |
---|---|
ThreadLocalTargetSource()
|
Method Summary | |
---|---|
void |
destroy()
Dispose of targets if necessary; clear ThreadLocal. |
int |
getHitCount()
Return the number of hits that were satisfied by a thread-bound object. |
int |
getInvocationCount()
Return the number of client invocations. |
int |
getObjectCount()
Return the number of thread-bound objects created. |
IntroductionAdvisor |
getStatsMixin()
Return an introduction advisor mixin that allows the AOP proxy to be cast to ThreadLocalInvokerStats. |
Object |
getTarget()
Implementation of abstract getTarget() method. |
Methods inherited from class org.springframework.aop.target.AbstractPrototypeBasedTargetSource |
---|
newPrototypeInstance, setBeanFactory |
Methods inherited from class org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource |
---|
copyFrom, getBeanFactory, getTargetBeanName, getTargetClass, isStatic, releaseTarget, setTargetBeanName, setTargetClass, writeReplace |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ThreadLocalTargetSource()
Method Detail |
---|
public Object getTarget() throws BeansException
getTarget
in interface TargetSource
BeansException
public void destroy()
destroy
in interface DisposableBean
public int getInvocationCount()
ThreadLocalTargetSourceStats
getInvocationCount
in interface ThreadLocalTargetSourceStats
public int getHitCount()
ThreadLocalTargetSourceStats
getHitCount
in interface ThreadLocalTargetSourceStats
public int getObjectCount()
ThreadLocalTargetSourceStats
getObjectCount
in interface ThreadLocalTargetSourceStats
public IntroductionAdvisor getStatsMixin()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |