I hope it is useful patch. -- "the spirit can only withdraw into a corner. And yet, it is not at all worn out or superfluous, but, like an (eternal) witness, floats above the rubble of culture - almost like an avenger of God. As though it awaited a new incarnation." -- Ludwig Wittgenstein -- Kazimierz Pogoda Nordic Consulting & Development Company mailto:[EMAIL PROTECTED]
Index: AbstractThreadManager.java =================================================================== RCS file: /home/cvspublic/avalon-components/cornerstone/threads/impl/src/java/org/apache/avalon/cornerstone/blocks/threads/AbstractThreadManager.java,v retrieving revision 1.2 diff -u -r1.2 AbstractThreadManager.java --- AbstractThreadManager.java 15 Mar 2004 14:47:43 -0000 1.2 +++ AbstractThreadManager.java 25 Oct 2004 11:29:35 -0000 @@ -18,15 +18,18 @@ package org.apache.avalon.cornerstone.blocks.threads; import java.util.HashMap; +import java.util.Iterator; import java.util.Map; import org.apache.avalon.cornerstone.services.threads.ThreadManager; import org.apache.excalibur.thread.ThreadPool; +import org.apache.avalon.framework.activity.Disposable; import org.apache.avalon.framework.configuration.Configurable; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.ConfigurationException; +import org.apache.avalon.framework.container.ContainerUtil; import org.apache.avalon.framework.logger.AbstractLogEnabled; /** @@ -36,7 +39,7 @@ */ public abstract class AbstractThreadManager extends AbstractLogEnabled - implements ThreadManager, Configurable + implements ThreadManager, Configurable, Disposable { ///Map of thread pools for application private HashMap m_threadPools = new HashMap(); @@ -55,6 +58,15 @@ for( int i = 0; i < groups.length; i++ ) { configureThreadPool( m_threadPools, groups[ i ] ); + } + } + + public void dispose() + { + final Iterator pools = m_threadPools.values().iterator(); + while( pools.hasNext() ) + { + ContainerUtil.dispose( pools.next() ); } }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]