Auch wenn man mir das hier nicht glauben mag, aber eine JVM kann man auf der iSeries nicht mehr manuell beenden. Früher ging das mit der Prozedur destroyJVM (siehe Ausschnitt aus ILE Programmers Guide V5R1). Aber in neueren Handbüchern ist das nicht mehr zu finden, weil es auch nicht mehr funktioniert.

Welches Release hast Du denn?

Gruß,
KM


Code:
/*------------------------------------------------------*/
/* destroyJVM */
/*------------------------------------------------------*/
P destroyJVM B EXPORT
D destroyJVM PI N
D rc S LIKE(jint)
D rpgRc S N
D jvm S * DIM(1)
D env S *
D bufLen S LIKE(jsize) INZ(%elem(jvm))
D nVMs S LIKE(jsize)
/free
//----------------------------------------------------------------
// See if there's a JVM started
//----------------------------------------------------------------
rc = JNI_GetCreatedJavaVMs (jvm : bufLen : nVMs);
//----------------------------------------------------------------
// If JVM is started, destroy it
//----------------------------------------------------------------
if (rc = 0
and nVMs > 0);
JavaVM_P = jvm(1);
rc = DestroyJavaVM (jvm(1));
endif;
if (rc = 0);
return *ON;
else;
return *OFF;
endif;
/end-free
P destroyJVM E
Figure 83. Source Code for destroyJVM