At 09:23 AM 7/9/2004, you wrote:
From: David Jencks [mailto:[EMAIL PROTECTED]
Sent: Thursday, July 08, 2004 6:24 PM
To: [EMAIL PROTECTED]
Subject: Thread pool strategy

I've been working with the thread pools and PooledExecutor from
concurrent a bit lately and understand how they work a little better
than I used to:-)

I've changed the ThreadPool implementation to:

have a hard max size limit (and minSize == maxSize)
have a Queue that all waiting tasks are put on.
No task is ever executed in the calling thread.

I think this is the most appropriate policy for all thread pools in
geronimo.  I'd be interested in other opinions... I don't consider
myself an expert in this.

I'm not sure if the current implementation ever gets smaller, since the
minsize == maxsize. Having maxSize > minSize would involve writing a LinkedQueue subclass that can communicate with the PooledExecutor to
determine if the pool size < maxSize. I'm reluctant to introduce this
complication without evidence that it is needed.


Many thanks
david jencks

I would suggest asking Doug Lea about this. He inexplicably seems to always have time to be helpful in this area, where he is the GooRoo. http://gee.cs.oswego.edu/dl/


I think this thread pool via PooledExecutor thing is the best thing since sliced bread. I use it whenever it is possible on my sites and have a standard mechanism for running tasks through this sort of implementation whenever it makes any sense whatsoever.

I don't know enough about geronimo to be much help to you here, however. I don't quite know how to get involved with the list. That has been a standard problem with me and lists which I am trying to solve.

Michael





Reply via email to