JBIAcceptorManager manages it acceptor thread pool using a ThreadPoolExecutor. ThreadPoolExecutor is designed to dispatch tasks to threads. The task are finished in the time.
But JBIAcceptorManager does not used tasks. It uses the ThreadFactory to create it's own thread, with its own method 'run'.
So this thread pool MUST be refactored to be a real thread pool (for example, as an array of threads)
JBIAcceptorManager manages it acceptor thread pool using a ThreadPoolExecutor. ThreadPoolExecutor is designed to dispatch tasks to threads. The task are finished in the time.
But JBIAcceptorManager does not used tasks. It uses the ThreadFactory to create it's own thread, with its own method 'run'.
So this thread pool MUST be refactored to be a real thread pool (for example, as an array of threads)
Christophe DENEUX added a comment - Thu, 22 Mar 2012 - 18:00:05 +0100
A patch implementing the new thread pool. Caution, a new parameter is needed to drive the stop of acceptor thread (time to wait before to force the stop)
Christophe DENEUX added a comment - Thu, 22 Mar 2012 - 18:00:05 +0100 A patch implementing the new thread pool. Caution, a new parameter is needed to drive the stop of acceptor thread (time to wait before to force the stop)
Merged in trunk