question: private static void ReleaseStringCritical ( JNIEnvironment env , int strJREF , Address carray ) { if ( traceJNI ) VM . sysWrite ( "JNI called: ReleaseStringCritical \n" ) ; RuntimeEntrypoints . checkJNICountDownToGC ( ) ; try { VM . enableGC ( true ) ; } catch ( Throwable unexpected ) { if ( traceJNI ) unexpected . printStackTrace ( System . err ) ; env . recordException ( unexpected ) ; } }
target:  ReleaseStringCritical: this function is intended to be paired with the GetStringCritical function.  Since the native code has direct access to the string's backing array of characters, no copyback update is necessary;  GC is simply reenabled.