Since delegation is downwards the only issue that should possibly occur is if a class gets loaded in the parent classloader that then needs a class in the child (e.g. web app) classloader. That will fail, of course, but that's ok as this should never occur.

On 6/22/2011 12:27 PM, Caldarale, Charles R wrote:
From: Jess Holle [mailto:je...@ptc.com]
Subject: Re: Slower start with Tomcat 7.0.14 and higher
Well the classloaders are clearly hierarchical, so only one Class
instance is loaded.  The fact that both ClassLoaders can see the jar
does not result in 2 Class objects
I think we need some experimentation (or browsing through some really ugly C++ 
code in the JVM) to verify the above.  I have a vague memory of the class 
dependency resolution being routed through the classloader of the class with 
the dependency, not the thread's current classloader, thus avoiding downward 
pointer issues.  However, since I've been looking at JVM code since 1.2 days, I 
can't be sure that's the way it works today without doing some more homework.

If dependency resolution does work the way I remember, then it would be 
possible for the same .class file to be processed by different classloaders in 
your environment.

  - 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 unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to