NewWeakGlobalRef
jweak NewWeakGlobalRef(JNIEnv *env, jobject obj);
Creates a new weak global reference. Returns
NULL
if obj
refers to null
, or if the VM runs out of memory. If the VM runs out of memory, an OutOfMemoryError
will be thrown. (NewWeakGlobalRef)LINKAGE:
Index 226 in the JNIEnv interface function table.SINCE:
JDK/JRE 1.2
Example - NewWeakGlobalRef
JNIEXPORT void JNICALL Java_mypkg_MyCls_f(JNIEnv *env, jobject self) { static jclass myCls2 = NULL; if (myCls2 == NULL) { jclass myCls2Local = (*env)->FindClass(env, "mypkg/MyCls2"); if (myCls2Local == NULL) { return; /* can't find class */ } myCls2 = NewWeakGlobalRef(env, myCls2Local); if (myCls2 == NULL) { return; /* out of memory */ } } ... /* use myCls2 */ }