Я хочу сохранить объект Java в JNI. Так что я делаю
jobject gRefObj = (*env)->NewGlobalRef(env, obj);
После этого я хочу получить задание из другого потока и из java-вызова jni для возврата объекта. Так и я.
(*_env)->DeleteGlobalRef(_env, gRefObj ); // if remove this line, it will work
return gRefObj; // From jni return to java
Тогда я получил classCastException, но если я удаляю DeleteGlobalRef, он работает нормально. Будет ли Java удалять его после использования?