Hey,

> >If the deadlock between these two classes can occur, CL1
> >must use CL2 to load C2, and CL2 must use CL1 to load C1.
> >But that would mean that CL2 is a parent of CL1, and CL1
> >is a parent of CL2. I believe that circular class loader
> >parentage is impossible in Java.
> 
> But that is exactly the central design of the RH-ServiceLibraries! 

[snip]

> Since ClassLoader.loadClassInternal(String) and
> ClassLoader.loadClass(String,boolean) 
> are both synchronized on the instances, we could run into the 
> problem, no
> matter whether
> ServiceLibraries does or does not lock anything, right?

I agree.
I started thinking if there is a chance to use a model similar to the one of
Catalina, where they implemented a ClassLoader that does *not* delegate to
its parent to search classes
(org.apache.catalina.loader.StandardClassLoader).

There is no way to set up JBoss' URLClassLoaders in a non-circular tree and
use the proposal I outlined 2 days ago ?

Regards

Simon

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to