tArray 方法组 数组类型 NewBooleanArray jbooleanArray NewByteArray jbyteArray NewCharArray jcharArray NewShortArray jshortArray NewIntArray jintArray NewLongArray jlongArray NewFloatArray jfloatArray NewDoubleArray jdoubleArrayGetltPrimitiveTypegtArrayElements 方法类型 NativeType GetltPrimitiveTypegtArrayElements JNIEnvenv ArrayType array jbooleanisCopy 说明:一组返回基本类型数组体的函数。
结果在调用相应的ReleaseltPrimitiveTypegtArrayElements函数前将一直有效。
由于返回的数组可能是 Java 数组的副本,因此对返回数组的更改不必在基本类型数组中反映出来,直到调用了 ReleaseltPrimitiveTypegtArrayElements。
如果 isCopy 不是 NULL,isCopy 在复制完成后即被设为 JNI_TRUE。
如果未复制,则设为 JNI_FALSE。
使用说明: 将 GetltPrimitiveTypegtArrayElements 替换为表中某个实际的基本类型元素访问器例程名。
将 ArrayType 替换为对应的数组类型。
将 NativeType 替换为该例程对应的本地类型。
参数: env:JNI 接口指针。
array:Java 字符串对象。
isCopy:指向布尔值的指针。
返回值: 返回指向数组元素的指针,如果操作失败,则为 NULL。
不管布尔数组在 Java 虚拟机中如何表示,GetBooleanArrayElements将始终返回一个 jbooleans 类型的指针,其中每一字节代表一个元素(开包表示)。
内存中将确保所有其它类型。
GetltPrimitiveTypegtArrayElements 例程数组类型 本地类型GetBooleanArrayElements jbooleanArray jbooleanGetByteArrayElements jbyteArray jbyteGetCharArrayElements jcharArray jcharGetShortArrayElements jshortArray jshortGetIntArrayElements jintArray jintGetLongArrayElements jlongArray jlongGetFloatArrayElements jfloatArray jfloatGetDoubleArrayElements jdoubleArray jdoubleReleaseltPrimitiveTypegtArrayElements 方法类型void ReleaseltPrimitiveTypegtArrayElements JNIEnv env ArrayTypearray NativeType elemsjint mode 功能:通知虚拟机平台相关代码无需再访问 elems 的一组函数。
elems 参数是一个通过使用对应的 GetltPrimitiveTypegtArrayElements 函数由array 导出的指针。
必要时,该函数将把对 elems 的修改复制回基本 mode 参数将提供有关如何释放数组缓冲区的信息。
类型数组。
如果 elems不是 array 中数组元素的副本,mode 将无效。
否则,mode 将具有下表所述的功能: 模式 动作 0 复制回内容并释放 elems 缓冲区 JNI_COMMIT 复制回内容但不释放 elems 缓冲区 JNI_ABORT 释放缓冲区但不复制回变化 多数情况下,编程人员将把“0”传给 mode 参数以确保固定的数组和复制的数组保持一致。
其它选项可以使编程人员进一步控制内存管理,但使用时务必慎重。
使用说明: .
上一篇:
基于OpenCV的粒子滤波
下一篇:
晚点遇见你,余生都是你