Just so I understand..you're advocating ThreadLocal over immutable variables or Local variables?

M--
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed.  If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy.  Thank you.

----- Original Message ----- From: "Caldarale, Charles R" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <users@tomcat.apache.org>
Sent: Saturday, June 23, 2007 4:34 PM
Subject: RE: Is ThreadLocal safe to use in servlets


From: lightbulb432 [mailto:[EMAIL PROTECTED]
Subject: Re: Is ThreadLocal safe to use in servlets

A different way of asking this question is where/when
does Tomcat start the Thread that handles a given
request, and what is executed in the context of that
thread? (e.g. filters, listeners, other things, servlets
of course)

Tomcat utilizes a thread pool for processing requests; the same thread
is used for the duration of the request through the entire
filter/servlet chain (required by the servlet spec), including data base
and other external resource access.  However, since the threads are
pooled, you can't count on ever seeing the same thread twice in a given
servlet, so ThreadLocal objects are best created and destroyed during
individual request handling; trying to keep them around longer runs the
risk of their continuing to exist even after a webapp has been stopped
or undeployed, resulting in garbage collection problems.

Since Listeners are not associated with a specific request, there's no
guarantee that the thread running through any Listener code will ever be
used for a request for the associated webapp, and there's no guarantee
it won't.

- Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY
MATERIAL and is thus for use only by the intended recipient. If you
received this in error, please contact the sender and delete the e-mail
and its attachments from all computers.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to