我正在从我的 JAVA 应用程序中调用一个长期运行的 JNI 方法。JNI 方法做了几件事,我想在每一步之后得到一个状态消息。
我有这个 JNI 片段:
JNIEXPORT void JNICALL Java_my_package_Engine_start(JNIEnv * env, jclass class, jstring address, jstring file) {
longRunningMethod1();
// notify java that method 1 is finished
longRunningMethod2();
// notify java that method 2 is finished
longRunningMethod3();
}
我以这种方式调用该方法:
Engine.start(param1, param2);
此方法会一直阻塞,直到 JNI 中的所有内容都完成 - 没关系,但现在我想获取并处理状态信息。
也许像 puts() 这样的东西会有所帮助?