[GCJ-core] dynamically unloading native libraries
Andrew Haley
aph@redhat.com
Wed Nov 5 11:08:00 GMT 2008
Sylvain Marié wrote:
> Thank you for putting the topic back on the table,
>>> We seem to never even call JNI_OnUnload on the jni libraries.
>> That's exactly my point - and also even libraries that do not contain JNI at all
> (simple .so without any relation to java - I know it is not a very useful case but it is
> very simple to test with a dummy .so).
>> But the root cause of the problem is a bit more complex:
>> a) As you mentioned, ClassLoaders don't unload unused native libraries when they are finalized.
>> but also
>> b) ClassLoaders don't even seem to be finalized when they are not used any more.
> (no alive instances, etc.)
>> So even correcting a) would not help, we should first try to understand why
> ClassLoaders are never gc'ed.
Yes. I can't think of any immediate reason why they aren't: it's a matter
worth investigating.
Andrew.
More information about the Java
mailing list