Cómo deshacerse de la biblioteca cargada con JNA
Estoy usando JNA para cargar una biblioteca nativa usando:
MyLibrary INSTANCE = (MyLibrary) Native.loadLibrary("mylibrary.so", MyLibrary.class);
Ahora quiero limpiar y deshacerme de la biblioteca. He leído sobre eldispose
método pero esto se define en la claseNativeLibrary
, ¿cómo se supone que debo llamar esto?
De todos modos, ¿es necesario hacer eso? Estoy usando jna con Apache Spark a gran escala, así que estoy cargando la biblioteca miles de veces, me pregunto si quedan recursos disponibles si hago una llamada explícitamentedispose
?
EDITAR: he visto la preguntaJna, descarga Dll de la clase java dinámicamente, pero no proporciona una solución a mi problema.
No hay respuesta aceptada. La gente sugiere llamarNativeLibrary.dispose()
, pero no existe tal método estático enNativeLibrary
. Si trato de emitir mi instancia de biblioteca (que es de tipoLibrary
), obtengo una excepción de reparto de clase.