public synchronized void closeProgram() {
		decompileMessage = "";
		if (program != null) {
			program = null;
			decompCallback = null;
			baseEncodingSet = null;
			overlayEncodingSet = null;
			try {
				if ((decompProcess != null) && decompProcess.isReady()) {
					decompProcess.deregisterProgram();
					DecompileProcessFactory.release(decompProcess);
				}
			}
			catch (IOException e) {
				// don't care
			}
			catch (DecompileException e) {
				// don't care
			}
			stopProcess();
		}
	}
Shutdown any existing decompiler process and free
resources.  The interface cannot be used again
to perform decompilations until an openProgram call
is made again.
Ghidra/Features/Decompiler/src/main/java/ghidra/app/decompiler/DecompInterface.java