Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在JNI中构建数组时,在SetObjectArrayElement之后使用DeleteLocalRef_Java_Java Native Interface - Fatal编程技术网

Java 在JNI中构建数组时,在SetObjectArrayElement之后使用DeleteLocalRef

Java 在JNI中构建数组时,在SetObjectArrayElement之后使用DeleteLocalRef,java,java-native-interface,Java,Java Native Interface,在JNI中,我通过调用SetObjectArrayElement()在JNI代码中插入本地创建的java对象来构造一个大型数组 我的问题是,使用SetObjectArrayElement()将对象插入数组后,数组是否存储引用,以便我可以使用DeleteLocalRef释放对插入对象的本地引用?是 jobjectArray指向一个引用数组 当您将该数组的一个成员设置为本地引用时,您已经对该对象进行了第二次引用。如果删除本地引用,数组中的引用将保留。在没有剩余的可访问引用之前,垃圾收集器不会处理实际

在JNI中,我通过调用
SetObjectArrayElement()
JNI
代码中插入本地创建的java对象来构造一个大型数组

我的问题是,使用
SetObjectArrayElement()
将对象插入数组后,数组是否存储引用,以便我可以使用DeleteLocalRef释放对插入对象的本地引用?

jobjectArray指向一个引用数组

当您将该数组的一个成员设置为本地引用时,您已经对该对象进行了第二次引用。如果删除本地引用,数组中的引用将保留。在没有剩余的可访问引用之前,垃圾收集器不会处理实际对象