I kind of liked ThreadWithAttributes :-), but I don't think it's
needed any more.
However, I think if we stop using it in some cases, we should completely remove
it, otherwise it's going to be messy.

ThreadWithAttributes was required long ago when we had JDK1.1 ( no ThreadLocal )
and with the early implementations of ThreadLocal. I haven't tested, but I hope
ThreadLocal is now optimized enough - i.e. I assume behaves just like
ThreadWithAttributes, accessing a 'local' data instead of the
hashtable lookup by thread.

+1 on removing completely TWA, but -1 on using it in some cases (
well, I think at least one
of the connectors is not using TWA already - but it's not commonly
used and I missed my
chance to -1 it.. )

Costin

On 4/28/06, Remy Maucherat <[EMAIL PROTECTED]> wrote:
Hi,

I refactored the endpoints for some of the connectors, adding the
possibility to use an Executor for the worker threads (given the accept
threads are long running threads, it does not make sense to pool them).
I would like to add a companion "Executor" element to either Engine or
Server (I haven't decided, any ideas ?) to be able to define a global
thread pool (with queuing :) ). I don't think this will be the default,
as the simple defaults are faster and probably good enough for many
cases, but in case of large servers with many thread-using services, it
could be useful to standardize on this common interface to allow sharing
the thread pool.

Note: At the moment, using the thread pool may cause memory leaks with
JMX. Also, the threads created are not thread with attributes by default
which would cause classcasts unless the executor is configured with the
appropriate thread factory. The solution might be to stop using
ThreadWithAttributes (which IMO would be logical, as in that case
threads are not used for a specified service - like a Tomcat connector -
so tracking their activity does not make sense).

Rémy

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to