Java Native Interface(JNI)高级编程与应用详解
1. 全局引用的创建与管理
在JNI编程中,我们可以使用本地引用创建全局引用。以下是一个示例,展示了全局引用的创建过程:
--- FIRST TIME CALLING ---
Global reference does not exist, creating...
The contents of globalString: This is a string
--- SECOND TIME CALLING ---
The contents of globalString: This is a string
从上述输出可以看出,全局引用只在第一次调用时创建。需要注意的是,在编写代码时,不要忘记释放全局引用。调用 DeleteGlobalRef 的时机取决于应用程序的设计。
2. 引用比较
JNI提供了 IsSameObject 函数,用于测试两个引用背后的对象是否相同。该函数的原型如下:
jboolean IsSameObject(jobject obj1, jobject obj2);
如果两个对象相同,函数返回 JNI_TRUE ,否则返回 JNI_FALSE 。当使用 IsSameObject 比较弱全局引用和
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



