再次加载jni库时会发生什么?

时间:2014-02-04 10:03:01

标签: java android java-native-interface

正如标题所说,如果我不卸载库并通过System.loadLibrary()再次加载它,那会发生什么?

是否会再次占用内存空间,或者使用之前分配的内存。

Android Dalvik机器

2 个答案:

答案 0 :(得分:2)

Afaik,如果库已加载,那么如果您再次在任何地方加载相同的库,那么该调用将被忽略。

答案 1 :(得分:1)

不,不会重新加载。在操作系统级别,库的引用计数会增加。一个编写良好的JVM将通过本机调用来平衡这一点,以便在JVM关闭时释放库。