Package org.apache.catalina.core
Class ThreadLocalLeakPreventionListener
- java.lang.Object
-
- org.apache.catalina.core.FrameworkListener
-
- org.apache.catalina.core.ThreadLocalLeakPreventionListener
-
- All Implemented Interfaces:
ContainerListener,LifecycleListener
public class ThreadLocalLeakPreventionListener extends FrameworkListener
ALifecycleListenerthat triggers the renewal of threads in Executor pools when aContextis being stopped to avoid thread-local related memory leaks.Note : active threads will be renewed one by one when they come back to the pool after executing their task, see
ThreadPoolExecutor.afterExecute().This listener must only be nested within
Serverelements.
-
-
Field Summary
Fields Modifier and Type Field Description protected static StringManagersmThe string manager for this package.-
Fields inherited from class org.apache.catalina.core.FrameworkListener
contextListeners
-
-
Constructor Summary
Constructors Constructor Description ThreadLocalLeakPreventionListener()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcontainerEvent(ContainerEvent event)Acknowledge the occurrence of the specified event.protected LifecycleListenercreateLifecycleListener(Context context)Create a lifecycle listener which will then be added to the specified context.voidlifecycleEvent(LifecycleEvent event)Listens forLifecycleEventfor the start of theServerto initialize itself and then for after_stop events of eachContext.-
Methods inherited from class org.apache.catalina.core.FrameworkListener
processContainerAddChild, processContainerRemoveChild, registerContextListener, registerListenersForEngine, registerListenersForHost, registerListenersForServer
-
-
-
-
Field Detail
-
sm
protected static final StringManager sm
The string manager for this package.
-
-
Method Detail
-
lifecycleEvent
public void lifecycleEvent(LifecycleEvent event)
Listens forLifecycleEventfor the start of theServerto initialize itself and then for after_stop events of eachContext.- Specified by:
lifecycleEventin interfaceLifecycleListener- Overrides:
lifecycleEventin classFrameworkListener- Parameters:
event- LifecycleEvent that has occurred
-
containerEvent
public void containerEvent(ContainerEvent event)
Description copied from interface:ContainerListenerAcknowledge the occurrence of the specified event.- Specified by:
containerEventin interfaceContainerListener- Overrides:
containerEventin classFrameworkListener- Parameters:
event- ContainerEvent that has occurred
-
createLifecycleListener
protected LifecycleListener createLifecycleListener(Context context)
Description copied from class:FrameworkListenerCreate a lifecycle listener which will then be added to the specified context.- Specified by:
createLifecycleListenerin classFrameworkListener- Parameters:
context- the associated Context- Returns:
- the lifecycle listener
-
-