@Override
	public void startChecking(int delay, TimeUnit delayTimeUnit) throws StopWaitingException {
		dialog.reset();
		try {
			// start thread to check frequently
			super.startChecking(delay, delayTimeUnit);

			// start thread for showing dialog
			executor.schedule(
				new CheckForListenerRunnable(executor, process, WAIT_FOR_LISTENER_PERIOD_MS,
					TimeUnit.MILLISECONDS, checkCondition),
				WAIT_FOR_LISTENER_DELAY_MS, TimeUnit.MILLISECONDS);
		}
		catch (RejectedExecutionException e) {
			if (dialog.isAnsweredNo()) {
				throw new StopWaitingException();
			}
		}
	}
checks to see if Ghidra process exited early, In the event Ghidra exits early, 
a runtime exception is thrown
@param p Ghidra process
@throws StartedGhidraProcessExitedException if the Ghidra process has an exit value
Ghidra/Features/GhidraGo/src/main/java/ghidra/app/plugin/core/go/ipc/CheckForListenerRunnable.java