Terminating the shared class cache

If you want to terminate the shared class cache without restarting it, use either of the following two commands: With both of these commands, you can choose to purge or forcepurge the JVMs, or allow them to finish running their current Java programs before they are deleted.
When you enter these commands, if autostart is enabled for the shared class cache, a new shared class cache is created as soon as a JVM requests its use. If you want to prevent this—that is, you want to terminate the shared class cache without restarting it—then you need to disable autostart. You can disable autostart in three ways:
  1. When you are entering a CEMT PERFORM CLASSCACHE PHASEOUT, PURGE or FORCEPURGE command (or the equivalent EXEC CICS command) to terminate the shared class cache, use the AUTOSTARTST option to disable autostart. (This option is not available if you are using the CEMT SET JVMPOOL PHASEOUT, PURGE or FORCEPURGE command.)
  2. Before you enter a command to terminate the shared class cache, use the CEMT SET CLASSCACHE AUTOSTARTST command (or the equivalent EXEC CICS command) to disable autostart.
  3. To disable autostart for the next CICS execution, set the JVMCCSTART system initialization parameter to NO.
Remember that if a Java program needs to run in a JVM that uses the shared class cache, and the shared class cache has been terminated and not restarted, and autostart is disabled, then the program cannot run.

You can use the CEMT INQUIRE CLASSCACHE command (or the equivalent EXEC CICS command) to find out the current status of autostart for the shared class cache. When you change the autostart status of the shared class cache while CICS is running, subsequent CICS restarts use the most recent setting that you made using the CEMT SET CLASSCACHE command or the CEMT PERFORM CLASSCACHE command (or the equivalent EXEC CICS commands), unless the system is INITIAL or COLD started, or the JVMCCSTART system initialization parameter is specified as an override at startup. In these cases, the setting from the system initialization parameter is used.

If you do not want to restart the shared class cache, and the worker JVMs that are dependent on it remain active for too long, you can repeat the CEMT PERFORM CLASSCACHE PURGE or FORCEPURGE command, or the CEMT SET JVMPOOL PURGE or FORCEPURGE command (or the equivalent EXEC CICS commands), to attempt to purge the tasks that are using the JVMs. You should only repeat these commands if autostart for the shared class cache is disabled. The commands operate on both the most recent shared class cache, and any old shared class caches in the system that still have JVMs dependent on them. If autostart is enabled, and you repeat the command to terminate the shared class cache, the command could operate on the new shared class cache that has been started by the autostart facility, and terminate it.