Re:How to Use the Foreign Function API in Java 22 to Call C ...
by tadfisher on Wednesday May 08, 2024 @10:58PM
(#40304881)
You can install a shutdown hook to do cleanup like this.
[ Parent
| on HN ]
Re:How to Use the Foreign Function API in Java 22 to Call C ...
by sedro on Wednesday May 08, 2024 @11:22PM
(#40305010)
That's how java.io.File#deleteOnExit works under the hood. The DLL is still loaded at that point and can't be deleted.
Re:How to Use the Foreign Function API in Java 22 to Call C ...
by tadfisher on Thursday May 09, 2024 @03:51PM
(#40312275)
Ah, looking through the docs [1]; you have to use your own ClassLoader (so it can be garbage-collected), and statically-link with a JNI library which is unloaded when the ClassLoader is garbage-collected.
1: https://docs.oracle.com/en/java/javase/22/docs/specs/jni/inv...