我有一个关于Android NDK中JNI调用Java的基本问题。我在进行实际调用方面没有问题,但是当从C调用时,我不确定Java调用是否被阻塞。 我的问题是具体是在执行Java方法时c调用块,还是立即返回。我问的原因是我将一个byteArray传递给Java,我想知道在调用启动后Java是否可以访问它。
答案 0 :(得分:2)
JNI调用就像是nornal函数调用。当JNI调用(和Java函数)返回时,您的本机代码将继续运行。
答案 1 :(得分:0)
您应该注意选择JNI呼叫,有些可能会阻塞。例如,获取一个指向字节数组的关键指针而不释放它可以阻止jvm继续运行。