... das Problem ist nicht das terminieren der JVM (da gibt es API DestroyJavaVM), das Problem ist, dass man innerhalb eines Jobs nur einmal eine JVM starten kann!!! Dieser Speicherfrass freut allenfalls IBM und ist der entscheidende Grund dafür, dass dieses schräge Design - Java aus native Jobs synchron aufzurufen - propagiert wird.
Asynchron entkoppeln und an eine vorgestartete JVM delegieren ist das einzig vernünftige, und wenn man es richtig implementiert, dann werden die ANforderungen von einer JVM parallel abgearbeitet. Wer sich da Arbeit sparen will, der kann mein Open Source Framework AppServer4RPG verwenden (ist die Grundlage von ArdGate); oft ist der Kram in wenigen Tagen komplett umgestellt , läuft dann schneller und stabiler, mit weniger Ressourcenverbrauch.

D*B