Review Request JDK-8240975: Extend NativeLibraries to support explicit unloading

Alan Bateman Alan.Bateman at oracle.com
Fri Mar 20 13:51:53 UTC 2020


On 20/03/2020 03:43, Mandy Chung wrote:
> Alan, Maurizio,
>
> New webrev:
> http://cr.openjdk.java.net/~mchung/jdk15/webrevs/8240975/webrev.02/
>
> newJavaNativeInterfaceLibraries  creates a NativeLIbraries for loading 
> JNI native libraries.
>   - native libraries are unloaded when the class loader is reclaimed.
>   - Support of linking of native method as specified in the JNI spec.
>   - Restriction on a native library that can only be loaded by one 
> class loader.
>
> newRawNativeLibraries creates  a raw NativeLibraries for loading 
> non-JNI native libraries.
>     -  non-JNI native library.  So JNI_OnLoad and JNI_OnUnload will be 
> ignored.  No support for linking of native method.
>     - Native libraries not auto-unloaded.  They may be explicitly 
> unloaded via NativeLibraries::unload.
>     - No relationship with class loaders.
>
> The test is updated to show that JNI_OnLoad and JNI_OnUnload are ignored.
"raw" seems okay for now, its internal so can easily be changed if there 
is a better name or changed further if finer control on the behavior is 
needed. If you are looking for a shorter name for the factory methods 
then maybe jniNativeLibraries and rawNativeLibraries would be better.

-Alan


More information about the core-libs-dev mailing list