* gcj.texi (Extensions): Document gcjlib URLs.
authorTom Tromey <tromey@redhat.com>
Thu, 28 Aug 2003 22:11:51 +0000 (22:11 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Thu, 28 Aug 2003 22:11:51 +0000 (22:11 +0000)
From-SVN: r70891

gcc/java/ChangeLog
gcc/java/gcj.texi

index fa23642..72075f7 100644 (file)
@@ -1,3 +1,7 @@
+2003-08-28  Tom Tromey  <tromey@redhat.com>
+
+       * gcj.texi (Extensions): Document gcjlib URLs.
+
 2003-08-20  Tom Tromey  <tromey@redhat.com>
 
        * gcj.texi (Extensions): Added xref.
index fc22329..374bdf8 100644 (file)
@@ -546,6 +546,21 @@ the @code{libgcj} bytecode interpreter to load the class from the standard
 classpath.  This process can be controlled to some degree via the
 @code{gnu.gcj.runtime.VMClassLoader.library_control} property;
 @xref{libgcj Runtime Properties}.
+
+@item
+
+@code{libgcj} includes a special @samp{gcjlib} URL type.  A URL of
+this form is like a @code{jar} URL, and looks like
+@samp{gcjlib:/path/to/shared/library.so!/path/to/resource}.  An access
+to one of these URLs causes the shared library to be @code{dlopen()}d,
+and then the resource is looked for in that library.  These URLs are
+most useful when used in conjunction with @code{java.net.URLClassLoader}.
+Note that, due to implementation limitations, currently any such URL
+can be accessed by only one class loader, and libraries are never
+unloaded.  This means some care must be exercised to make sure that
+a @code{gcjlib} URL is not accessed by more than one class loader at once.
+In a future release this limitation will be lifted, and such
+libraries will be mapped privately.
 @end itemize
 
 @node Invoking gcjh