Ho diverse classi che utilizzano la stessa libreria JNI, chiamata "jni". In ciascuna di tali classi, ho una() chiamata System.loadLibrary nel inizializzatore statico della classe:Impedisci a Java di caricare la libreria più di una volta
Class class1 {
static{
System.loadLibrary("jni");
}
...
}
Class class2 {
static{
System.loadLibrary("jni");
}
...
}
L'unico problema è, voglio solo System.loadLibrary() per essere chiamata una volta, dal momento che può prendere un po. Esiste un modo semplice e pulito per prevenire più caricamenti della stessa libreria?
Sì, hai capito :) –
È vero anche per System.load? I documenti non specificano in alcun modo. –
Sì. Questo vale anche per System.load. –