From: "Morgan Delagrange" <[EMAIL PROTECTED]>
> Are compiled Script objects supposed to be
> thread-safe, or do I need to pool them?  In either
> case, the answer should probably be documented in the
> Javadocs.

Scripts are *meant* to be thread safe. So each Tag is thread local so that
the same Script can be run concurrently in several threads. Note though that
the parsing of Scripts isn't thread safe; so only 1 thread should parse a
Script at once (so the XMLParser could be synchronized or pooled). However
once you have a Script you should be able to run it in several threads.

The JellyContext should be thread local; the aim is to refactor the
JellyContext code a little so that it supports pluggable variable Scopes,
then some synchronized shared Scopes can be used to share state across
threads, while still having thread local Scopes too.

The org.apache.commons.jelly.impl package contains the Script implementation
classes, *Script.java, which should be thread safe. Though I think
BeanTagScript might not be threadsafe right now, it might need a couple of
tweeks to ensure thread safety. FWIW I've been meaning to simplify the code
in this part so that BeanTagScript, TagScript and DynaTagScript merge
together into a single class capable of invoking at runtime either a bean
Tag or a DynaTag and being thread safe)

James
-------
http://radio.weblogs.com/0112098/

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

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

Reply via email to