Package org.apache.catalina.core
Class ThreadLocalLeakPreventionListener
java.lang.Object
org.apache.catalina.core.ThreadLocalLeakPreventionListener
- All Implemented Interfaces:
ContainerListener,LifecycleListener
public class ThreadLocalLeakPreventionListener
extends Object
implements LifecycleListener, ContainerListener
A
LifecycleListener that triggers the renewal of threads in Executor pools when a Context is 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 Server elements.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final StringManagerThe string manager for this package. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcontainerEvent(ContainerEvent event) Acknowledge the occurrence of the specified event.voidlifecycleEvent(LifecycleEvent event) Listens forLifecycleEventfor the start of theServerto initialize itself and then for after_stop events of eachContext.protected voidprocessContainerAddChild(Container parent, Container child) protected voidprocessContainerRemoveChild(Container parent, Container child)
-
Field Details
-
sm
The string manager for this package.
-
-
Constructor Details
-
ThreadLocalLeakPreventionListener
public ThreadLocalLeakPreventionListener()
-
-
Method Details
-
lifecycleEvent
Listens forLifecycleEventfor the start of theServerto initialize itself and then for after_stop events of eachContext.- Specified by:
lifecycleEventin interfaceLifecycleListener- Parameters:
event- LifecycleEvent that has occurred
-
containerEvent
Description copied from interface:ContainerListenerAcknowledge the occurrence of the specified event.- Specified by:
containerEventin interfaceContainerListener- Parameters:
event- ContainerEvent that has occurred
-
processContainerAddChild
-
processContainerRemoveChild
-